| |
Результат одновременной работы вызовов accumulate к одному и тому
же адресу, с одной и той же операцией и предопределенным типом данных,
является таким же, как если бы accumulate к этому адресу был сделан
в некотором последовательном порядке. С другой стороны, если два адреса
обновляются двумя вызовами accumulate, тогда обновления по этим
адресам могут произойти в обратном порядке. Таким образом, нет гарантии,
что весь вызов обновления MPI_ACCUMULATE выполнится как единое
целое. Эффект этой недостаточной атомарности ограничен: предыдущие
условия корректности подразумевают, что к адресам, обновляемым вызовом
MPI_ACCUMULATE, нельзя получить доступ при помощи load или
RMA вызова, отличного от accumulate, пока не выполнится вызов
MPI_ACCUMULATE (в адресате). Разные чередования вызовов
могут привести к разным результатам только в той степени, в какой
компьютерная алгебра не полностью ассоциативна или коммутативна.
|
Закладки на сайте Проследить за страницей |
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |