cray_upc_team_barrier
- Date:
09-23-2013
NAME
cray_upc_team_barrier - Cray UPC team barrier collective
SYNOPSIS
#include <upc_collective_cray.h>
cray_upc_return_t cray_upc_team_barrier( cray_upc_team_t team,
upc_handle_t *handle );
IMPLEMENTATION
Cray Linux Environment (CLE)
DESCRIPTION
The cray_upc_team_barrier function performs a collective barrier between all ranks in a Cray UPC team. The function blocks until all threads in the team have called it. Passing a non-NULL pointer as the handle argument indicates that the barrier should be non-blocking and will be synced later by the user.
RETURN VALUE
The cray_upc_team_barrier function returns CRAY_UPC_SUCCESS if it successfully performed the barrier, or CRAY_UPC_ERROR if an error occurred.
NOTES
The cray_upc_team_barrier function is NOT equivalent to a upc_barrier statement. In particular, it does not have an implicit fence before or after. It is up to the programmer to ensure that any needed memory ordering is explicitly handled in the program using strict references or upc_fence statements. The implementation of the non-blocking form of this collective is deferred. Passing anything other than NULL as a handle is an error.
SEE ALSO
cray_upc_return_t(3c), cray_upc_team_t(3c), cray_upc_team_reduce(3c)