mpi实现通信要用什么mpi
mpi实现通信要用mpiMPI通讯区都有一个GDID号,第一位代表全局数据的循环数,每个循环数表示和一个CPU通信。
S7-300CPU通信,两个发送与接收是一个循环,S7-400CPU之间的3个发送与接收是一个循环。支持循环数与CPU有关,S7-300最多为4个,即最多能和4个CPU通信。S7-400CPU414-2DP最多为8个,S7-400CPU416-2DP最多为16个。
和上位机进行MPI/DP通信,上位机要么安装了CP系列的通信网卡,然后使用普通的通信线,要么使用专用的适配器,包括PC适配器(一端接PLC,一端接PC电脑的RS232),和USB适配器。
6个MPI调用接口:
1.mpi init()初始化MPI执行环境,建立多个MPI进程之间的联系,为后续通信做准备。
2.mpi finalize 结束MPI执行环境。
3.mpi comm rank用来标识各个MPI进程的,给出调用该函数的进程的进程号,返回整型的错误值。两个参数:MPI_Comm类型的通信域,标识参与计算的MPI进程组; &rank返回调用进程中的标识号。
4.mpi comm size用来标识相应进程组中有多少个进程。
5.mpi send(buf,counter,datatype,dest,tag,comm): buf:发送缓冲区的起始地址,可以是数组或结构指针;count:非负整数,发送的数据个数;datatype:发送数据的数据类型;dest:整型,目的的进程号;tag:整型,消息标志;comm:MPI进程组所在的通信域。