The V1.0 UPC Collectives Spec

Click here to start

Table of contents

Slide 1

The V1.0 UPC Collectives Spec

Collective functions

Remaining collectives spec issues (large and small)

Wording used to specify the affinity of certain arguments

{signed} option for types supported by reduce and prefix reduce operations

What requirements are made of the phase of function arguments?

Associativity and commutative reduce and prefix reduce operations

Alternative Synchronization semantics

Synch semantic naming ideas

Can nbytes be 0 in 5.3 functions?

1. Synchronization phase

2. Bill’s strict semantic

3. Affinity-based semantics

4. “Split-phase” semantics

What are the synchronization semantics?

void upc_all_broadcast(dst, src, blk);

void upc_all_scatter(dst, src, blk);

void upc_all_gather(dst, src, blk);

void upc_all_gather_all(dst, src, blk);

void upc_all_exchange(dst, src, blk);

void upc_all_permute(dst, src, perm, blk);

int upc_all_reduceI(src, UPC_ADD, n, blk, NULL);

void upc_all_prefix_reduceI(dst, src, UPC_ADD, n, blk, NULL);

Slide 25

Slide 26

Slide 27


More sophisticated synchronization semantics

Slide 30

Commutativity of reduce and prefix reduce operations