Следующие три атрибута кэшируются для оконного объекта, когда тот создается.
MPI_WIN_BASE |
Базовый адрес окна. | |
MPI_WIN_SIZE |
Размер окна, в байтах. | |
MPI_WIN_DISP_UNIT |
Единица смещения, связанная с окном. |
В Си вызовы к
MPI_Win_get_attr(win,
MPI_WIN_BASE,
&base,
&flag)
,
MPI_Win_get_attr(win,
MPI_WIN_SIZE,
&size,
&flag)
и к
MPI_Win_get_attr(win,
MPI_WIN_DISP_UNIT,
&disp_unit,
&flag)
в
base
возвращают указатель на начало окна win
, а в
size
и disp_unit
- указатели на размер окна и единицу
смещения для него, соответственно. То же самое имеет место и для
С++.
В то же время в ФОРТРАНe, вызовы процедур
MPI_WIN_GET_ATTR(win,
MPI_WIN_BASE,
base,
flag,
ierror)
,
MPI_WIN_GET_ATTR(win,
MPI_WIN_SIZE,
size,
flag,
ierror)
и к
MPI_WIN_GET_ATTR(win,
MPI_WIN_DISP_UNIT,
disp_unit,
flag,
ierror)
возвратят в base size
и disp_unit
(целочисленное представление) базовый адрес, размер и единицу смещения
окна win
, соответственно. (Функции доступа к оконным атрибутам
окна определяются в разделе 8.8)
Другой ``атрибут окна'', а именно группу процессов, присоединенных к окну, можно найти, используя вызов, приведенный ниже.
MPI_WIN_GET_GROUP(win, group)
IN | win | оконный объект (дескриптор) | |
OUT | group | группа процессов, которые разделяют доступ к окну (дескриптор) |
int MPI_Win_get_group(MPI_Win win, MPI_Group *group)
MPI_WIN_GET_GROUP(WIN, GROUP, IERROR)
INTEGER WIN, GROUP, IERROR
MPI::Group MPI::Win::Get_group() const
MPI_WIN_GET_GROUP
возвращает дубликат группы коммуникатора
используемого для создания оконного объекта, ассоциированного с
win
. Группа возвращается в group
.