Нужно ли ждать неблокирующую отправку с блокирующим получением? - PullRequest
0 голосов
/ 26 мая 2018

Я знал, что если обе стороны неблокируют отправку и получение, тогда требуется MPI_Wait или MPI_Test.Но мне было интересно, если мы смешаем неблокирующую отправку и блокирующее получение, нужно ли мне все равно звонить MPI_Wait, учитывая, что блокирующее получение может обеспечить завершение связи?

1 Ответ

0 голосов
/ 26 мая 2018

Разница между неблокирующим и блокирующим режимами связи только локально.Вы можете свободно смешивать различные виды отправки и получения.На какой бы стороне вы ни использовали неблокирующие примитивы, вы должны всегда выдавать MPI_Wait или что-то подобное для завершения связи.

Это необходимо для очистки ресурсов: если вы никогда не завершитенеблокирующая отправка, вам никогда не позволят повторно использовать буфер отправки и накапливать устаревшие объекты запроса.

...