18.2.159. shmem_longlong_inc

shmem_int4_inc(3), shmem_int8_inc(3), shmem_int_inc(3), shmem_long_inc(3), shmem_longlong_inc(3) - 这些例程 对远程数据对象执行原子递增操作。

18.2.159.1. 概述

C或C++:

#include <mpp/shmem.h>

int shmem_int_inc(int *target, int pe)

long shmem_long_inc(long *target, int pe)

long long shmem_longlong_inc(long long *target, int pe)

Fortran语言:

INCLUDE "mpp/shmem.fh"

INTEGER pe
INTEGER(KIND=4) SHMEM_INT4_INC, target4
INTEGER(KIND=8) SHMEM_INT8_INC, target8

ires4 = SHMEM_INT4_INC(target4, pe)

ires8 = SHMEM_INT8_INC(target8, pe)

18.2.159.2. 描述

原子递增例程将target的值替换为其当前值加一。该操作必须在完成时确保不存在另一个进程在读取和更新之间修改target的可能性。

参数如下:

target

需要在远程PE上更新的可远程访问的整数数据对象。目标类型应与SYNOPSIS部分中隐含的类型匹配。

pe

一个整数,表示目标将被更新的PE编号。如果使用Fortran,它必须是一个默认的整数值。

18.2.159.3. 注意事项

术语"远程可访问"的定义见intro_shmem(3)。

18.2.159.4. 返回值

无。

另请参阅

intro_shmem(3)