<< MPI_Irecv Scilab MPI MPI_Recv >>

Scilab Help >> Scilab MPI > MPI_Isend

MPI_Isend

ノード間の非ブロッキングデータ送信

呼び出し手順

res = MPI_Isend(value,node)

引数

value

特定のノードに送信する値.

node

データを送信するノード

res

処理結果 (成功時にtrue,失敗した場合はfalse)

説明

特定のノードに変数を非ブロック(非同期)モードで送信します. この値はノードで関数 MPI_Irecvにより 取得します.

MPI_Init();
rnk =    MPI_Comm_rank();
sizeNodes =    MPI_Comm_size();
SLV = rnk;
Master = ~ SLV;
assert_checkequal(MPI_Comm_size(), 2);
if Master
   for slaveId = 1:sizeNodes-1
     value = slaveId*2
     MPI_Isend(value, slaveId, 42);
   end
else
    rankSource=0;
    tag=0;
    MPI_Irecv(rankSource, tag, 42); // MPI_Irecv does not return any value
    value=MPI_Wait(42) // the value will be returned by MPI_Wait
    assert_checkequal(value,2);
end
MPI_Finalize();
exit()

参照


Report an issue
<< MPI_Irecv Scilab MPI MPI_Recv >>