Communication¶
Usage
use Communication;
or
import Communication;
Warning
The Communication module is unstable and may change in the future
This module provides low-level communication procedures.
Warning
These procedures will perform very rudimentary error checking with checks enabled. Namely, only locale IDs and data sizes are checked to make sure they have reasonable values. Validity of the addresses is not confirmed under any circumstance.
- proc get(dest: c_ptr(void), src: c_ptr(void), srcLocID: int, numBytes: integral)¶
Copy potentially remote data into local memory.
- Arguments
dest – Address in local memory where the data will be copied into
src – Address of the source in potentially remote memory
srcLocID – ID of the source locale
numBytes – Number of bytes to copy
- proc put(dest: c_ptr(void), src: c_ptr(void), destLocID: int, numBytes: integral)¶
Copy local data into potentially remote memory.
- Arguments
dest – Address in potentially remote memory where the data will be copied into
src – Address of the source in local memory
destLocID – ID of the destination locale
numBytes – Number of bytes to copy