Currently a few instruction types which stress (unlike most languages) movement of data through memory hierarchies
|
Can be applied as aggregates (data parallel) or to each member of a set
|
send DATAFAMILY from MEM-LEVEL-L to MEM-LEVEL-K
-
These reference object names for data and memory nodesets (aggregates) or nodeset members (explicit parallel applications)
-
Current implementation only supports "primitive"(one level) movement -- can naturally extend to multi-level movement
|
move DATAFAMILY from MEM-LEVEL-L to MEM-LEVEL-K
|
Use distribution DISTRIBUTION from MEM-LEVEL-L to MEM-LEVEL-K
|
compute DATAFAMILY-A, DATAFAMILY-B,... on MEM-LEVEL-L
|
synchronize (synchronizes all processors --- loosely synchronous barrier)
|