Parallelization Patterns
Successful Parallelization Patterns : NOT so many !
- Nearest Neighbor Computation (PDE Solvers)
- Broadcast (Initialization ~ Parallelization)
- Reductions (Sum, Max, …), Particle Pusher (Monte Carlo, MO,…)
- Array Transposition (ADI, FFT, …)
- Pipelining (ADI,… alternative to the above)
- Irregular Array access with data access locality (FEM, Sparse Matrix Computation)
- Domain Decomposition (Subroutine Calls inside Parallel Loops)
- Combination