The upc_all_broadcast function

Purpose

Copies a block of memory

Synopsis

    
    #include <upc.h>
    #include <upc_collective.h>
    void upc_all_broadcast(shared void * restrict dst, shared const void * restrict src, size_t nbytes, upc_flag_t flags);             

Description

The upc_all_broadcast function copies a block of memory with affinity to a single thread to a block of shared memory on each thread. The number of bytes in each block is nbytes.

nbytes must be strictly greater than 0.

upc_all_broadcast function treats the src pointer as if it pointed to a shared memory area with the type:

    shared [] char[nbytes]
    

The effect is equivalent to copying the entire array pointed to by src to each block of nbytes bytes of a shared array dst with the type:

    shared [nbytes] char[nbytes * THREADS]

The target of the dst pointer must have affinity to thread 0.

The dst pointer is treated as if it has phase 0.

 

 

Terms, definitions, and symbols

Back to index of all UPC functions