前文说到,mpi是信息传递接口,因此信息传递是mpi的重点.而进程中的信息传递就是进程通信!今天我们将看看mpi创建的一组进程是怎么相互通信的.
进程通信有许多种,点对点通信,广播,散播等.今天我们先学习点对点通信.
什么是点对点通信?其实就是最简单的进程A向进程B发送信息,而进程B向进程A接收信息.这是关于两个进程之间的通信.
代码:
运行结果:
代码解释:
我们看见,进程1得到了进程0的数据,一个int,值为1.
使用到的一组方法是comm对象的send和recv.
send方法的第一个参数就是你要传送的数据,这个数据可以是一个int,一个float,还可以是列表,字典,甚至是numpy的array对象(你可以试一下)