📄 testsendinit.java
字号:
package mpi.pt2pt ;import mpi.*; public class TestSendInit { static int me,tasks,i; static int mebuf[] = new int[1]; static int data[]; static Prequest req[]; static void wstart() throws MPIException { for(i=0;i<tasks;i++) data[i] = -1; MPI.COMM_WORLD.Barrier(); for(i=0;i<2*tasks;i++) { req[i].Start(); } Request.Waitall(req); for(i=0;i<tasks;i++) if(data[i] != i) System.out.println ("ERROR in Startall: data is "+data[i]+", should be "+i); } static public void main(String[] args) throws Exception { MPI.Init(args); me = MPI.COMM_WORLD.Rank(); tasks =MPI.COMM_WORLD.Size(); data = new int[tasks]; req = new Prequest[2*tasks]; mebuf[0] = me ; for(i=0;i<tasks;i++) { req[2*i] = MPI.COMM_WORLD.Send_init(mebuf,0,1,MPI.INT,i,1); req[2*i+1] = MPI.COMM_WORLD.Recv_init(data,i,1,MPI.INT,i,1); } for (int j=0; j <= 2; j++) { System.out.println("Iteration " + j); wstart(); } MPI.Finalize(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -