并行计算的实验课,布置了MPI做热传导的题,老师讲的少之又少,自己琢磨了半天才对MPI懂了一点点
1.首先MPI是基于消息传递的并行计算模式,与之前的pthread,openMP等共享内存的完全两码事,这是首先要明白的。
2.MPI程序中,既有串行执行的程序,也有并行执行的程序。其中,并行的部分全部放在MPI_Init(&argc,&argv)和MPI_Finalize()内部。(其实外部的程序也都会在每一个进程中运行,此处不太理解内部具体是怎么搞的)
3.也是最让我开始纳闷的地方:MPI 的程序怎么在代码中控制开多少个进程啊?费了我半天劲,原来MPI有自己的编译和运行命令。最简单的编译命令 mpicc mpi.c -o mpi最简单的运行命令mpirun -np 4 ./mpi 其中-np就是指定开启的进程数
4.貌似MPI发挥作用是要在集群上运行的,但是单机下也可以运行,用上述命令即可。
下一个实验还要将pthread加入MPI中,新接口还得查...
总之,要使用MPI,还有很多东西要学的哇,继续吧!!!