DASH
0.3.0
|
Concept of distributed global memory space shared by units in a specified team. More...
![]() |
Concept of distributed global memory space shared by units in a specified team.
An abstraction of global memory that provides sequential iteration and random access to local and global elements to units in a specified team. The C++ STL does not specify a counterpart of this concept as it only considers local memory that is implicitly described by the random access pointer interface.
The model of global memory represents a single, virtual global address space partitioned into the local memory spaces of its associated units. The global memory concept depends on the allocator concept that specifies allocation of physical memory.
Local pointers are usually, but not necessarily represented as raw native pointers as returned by malloc
.
Type Name | Description |
---|---|
GlobalRAI | Random access iterator on global address space |
LocalRAI | Random access iterator on a single local address space |
Return Type | Method | Parameters | Description |
---|---|---|---|
GlobalRAI | begin | Global pointer to the initial address of the global memory space | |
GlobalRAI | end | Global pointer past the final element in the global memory space | |
LocalRAI | lbegin | Local pointer to the initial address in the local segment of the global memory space | |
LocalRAI | lbegin | unit u | Local pointer to the initial address in the local segment at unit u of the global memory space |
LocalRAI | lend | Local pointer past the final element in the local segment of the global memory space | |
LocalRAI | lend | unit u | Local pointer past the final element in the local segment at unit u of the global memory space |
GlobalRAI | at | index gidx | Global pointer to the element at canonical global offset gidx in the global memory space |
void | put_value | value & v_in, index gidx | Stores value specified in parameter v_in to address in global memory at canonical global offset gidx |
void | get_value | value * v_out, index gidx | Loads value from address in global memory at canonical global offset gidx into local address v_out |
void | barrier | Blocking synchronization of all units associated with the global memory instance |