开发者

Is MPI_Request global among the MPI processees?

开发者 https://www.devze.com 2023-01-01 04:22 出处:网络
If i declare a table of MPI_Request ( one request for each CPU ), it will be accessible globally when using for MPI_Isend/MPI_Irecv ?? ( In comparison with MPI_comm that is everywhere accessible after

If i declare a table of MPI_Request ( one request for each CPU ), it will be accessible globally when using for MPI_Isend/MPI_Irecv ?? ( In comparison with MPI_comm that is everywhere accessible after init开发者_开发技巧ializing the MPI environment )

Thanks.


I find the question a bit confusing, perhaps you could clarify. MPI_Request is a type; if you declare a table of values of this type on one process then it is only available to that process, in line with any other variables declared.

Data of type MPI_REQUEST is usually used as handles for immediate sends and receives (ISend, Irecv), to allow the sending and receiving processes to test that the message has been received, using MPI_Test or MPI_Wait/MPI_Waitall/MPI_Waitany.

MPI_Comm is also a type, but perhaps you mean the default communicator itself which is of this type ? This is known to all the processes because MPI_Init which (effectively) creates the default communicator is a collective operation.

0

精彩评论

暂无评论...
验证码 换一张
取 消