2012-08-30 36 views
5

tôi tò mò tại thiếu chức năng này trong Bộ KH & ĐT:MPI không chặn gửi/recv

MPI_Isendrecv(...); 

ví dụ: non-blocking gửi và nhận, bất cứ ai có thể cho tôi biết lý do đằng sau sự thiếu sót của nó?

+0

Nhìn vào bản nháp của thông số MPI gốc trên netlib.org, có vẻ như chức năng được sử dụng để bao gồm, nhưng sau đó bị loại bỏ trong thông số kỹ thuật MPI 1.0 cuối cùng. Bây giờ tôi cũng tò mò muốn biết lý do là gì. –

Trả lời

5

Việc lấy của tôi là MPI_SENDRECV tồn tại như một sự tiện lợi cho các lập trình viên muốn sử dụng ngữ nghĩa chặn, nhưng cần phải thực hiện thao tác dịch chuyển. Nếu bạn cảm thấy thoải mái với ngữ nghĩa không chặn, bạn chỉ nên sử dụng MPI_ISENDMPI_IRECV hiện tại.

Điều thú vị là MPI-3 sẽ thêm tập thể không chặn (ví dụ: MPI_IBARRIER), nhưng vẫn không có MPI_ISENDRECV (xem http://meetings.mpi-forum.org/draft_standard/mpi3.0_draft_2.pdf).

Các vấn đề liên quan