Study References
- (intro) https://www.youtube.com/watch?v=kHV6wmG35po
- (adv1) https://www.youtube.com/watch?v=LBgx_S5ougk
- (adv2) https://www.youtube.com/watch?v=CliFXC3kG90
- (slide1) www.ece.arizona.edu/~ece568/MPI1.ppt
- (tutorial) https://mpitutorial.com/
- (good manual) http://www.rc.usf.edu/tutorials/classes/tutorial/mpi/
- (how to use) https://hpc-wiki.info/hpc/How_to_Use_MPI
- mpi-half-day-public.pdf
- mpi_lec.pdf
- (intel mpi) https://software.intel.com/content/www/us/en/develop/documentation/mpi-developer-reference-linux/top.html (tuning 관련 내용도 있음)
- (MPI Profiler) https://vampir.eu/
Comparison between distributions (MPICC, MPICH, Intel MPI, OpenMPI 등)
Internals
Advanced
- User defined reduce operator
- https://www.mpi-forum.org/docs/mpi-2.2/mpi22-report/node107.htm
- MPI_OP_CREATE binds a user-defined reduction operationto an op handle that can subsequently be used in MPI_REDUCE, MPI_ALLREDUCE, MPI_REDUCE_SCATTER, MPI_SCAN, and MPI_EXSCAN. The user-defined operation is assumed to be associative. If commute = true, then the operation should be both commutative and associative. If commute = false, then the order of operands is fixed and is defined to be in ascending, process rank order, beginning with process zero. The order of evaluation can be changed, talking advantage of the associativity of the operation. If commute = true then the order of evaluation can be changed, taking advantage of commutativity and associativity.
- Internals
- TODO
- Compiler structure
- TODO
- Node Topology
- TODO