Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Выполняет операцию удаленного атомарного сравнения и переключения.
Синтаксис
int MPIAPI MPI_Compare_and_swap(
_In_ void *origin_addr,
_In_ void *compare_addr,
_Out_ void *result_addr,
MPI_Datatype datatype,
int target_rank,
MPI_Aint target_disp,
MPI_Win win
);
Параметры
origin_addr [in]
начальный адрес буфераcompare_addr [in]
начальный адрес comparebufferresult_addr [out]
начальный адрес буфера результатовdatatype
тип данных каждой записи во всех буферахtarget_rank
ранг целевого объектаtarget_disp
смещение от начала окна до начала целевого буфераВыиграть
объект window
Возвращаемое значение
Возвращает MPI_SUCCESS об успешном выполнении. В противном случае возвращаемое значение является кодом ошибки.
В Fortran возвращаемое значение хранится в параметре IERROR .
Fortran
MPI_COMPARE_AND_SWAP(ORIGIN_ADDR, COMPARE_ADDR, RESULT_ADDR,
DATATYPE, TARGET_RANK, TARGET_DISP, WIN, IERROR)
<type> ORIGIN_ADDR(*), COMPARE_ADDR(*), RESULT_ADDR(*)
INTEGER(KIND=MPI_ADDRESS_KIND) TARGET_DISP
INTEGER DATATYPE, TARGET_RANK, WIN, IERROR
Комментарии
Эта функция сравнивает один элемент типа datatype в буфере сравнения compare_addr с буфером со смещением target_disp в целевом окне, заданном target_rank и win , и заменяет значение в целевом объекте значением в исходном буфере origin_addr , если буфер сравнения и целевой буфер идентичны. Исходное значение в целевом объекте возвращается в result_addr буфера. Тип данных параметра должен принадлежать к одной из следующих категорий предопределенных типов данных: C integer, Fortran integer, Logical, Multi-language или Byte. Исходный и результирующий буферы (origin_addr и result_addr) должны быть несвязанными.
Требования
Продукт |
Распространяемый пакет HPC 2012 MS-MPI, пакет HPC 2008 R2 распространяемый пакет MS-MPI, пакет HPC 2008 MS-MPI распространяемый пакет или служебные программы клиента ПАКЕТА HPC 2008 |
Заголовок |
Mpi.h; Mpif.h |
Библиотека |
Msmpi.lib |
DLL |
Msmpi.dll |