CPSC 418: Parallel Computation