- changed status to resolved
Add missing atomic_domain operations
Issue #131
resolved
GASNet-EX remote atomics support includes the following operations, all of which are currently missing at the UPC++ level:
atomic_domain.(fetch_)mult
atomic_domain.(fetch_)min
atomic_domain.(fetch_)max
atomic_domain.(fetch_)bit_and
- only for integer typesatomic_domain.(fetch_)bit_or
- only for integer typesatomic_domain.(fetch_)bit_xor
- only for integer types
We should add them to the UPC++ spec and implementation.
Now that the atomics spec is factored, the spec work should be a simple matter of adding them to the operation enum and function table. The implementation should be similarly mechanical.
@sbbaden has an immediate use case for atomic_domain.bit_xor()
, which is required for implementing HPC Challenge RandomAccess (GUPS) using remote atomics - which is likely to be best fine-grained implementation we can produce for large-scale runs on Cray XT and other systems with offload support for atomics.
Comments (1)
-
reporter - Log in to comment
Resolved in 9a196b8 (pull request akamil/
#1)