mpi变成常用命令
编译c程序 gcc 例:gcc -Wall -o my_sa my_sa.c 若要编译c++,需要连接, 加参数gcc -Wall -o my_sa my_sa.cpp -lstdc++
编译c++ g++ 例:g++ -Wall -o my_sa my_sa.cpp
编译mpi c程序 用mpicc 例:mpicc -Wall my_sa.cpp -o my_sa
编译mpi c+程序 用mpicxx 例:mpicxx -Wall my_sa.cpp -o my_sa
执行mpi程序:mpiexec -n4 ./my_sa
MPI_SENDRECV(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status)
MPI_SENDRECV(sendbuf, sendcount, sendtype, dest, sendtag, recvbuf, recvcount, recvtype, source, recvtag, comm, status) 参数: IN sendbuf 发送缓冲区起始地址 IN sendcount 发送数据的个数 IN sendtype 发送数据的数据类型 IN dest 目标进程的标识号 IN sendtag 发送消息标签 OUT recvbuf 接收缓冲区初始地址 IN recvcount 最大接收数据个数 IN recvtype 接收数据的数据类型 IN source 源进程标识 IN recvtag 接收消息标签 IN comm 通信器 OUT status 返回的状态
当前进程为myrank时,MPI_SENDRECV向dest发送数据, 从source进程接收数据
来自教材并行计算导论