Visible to Intel only — GUID: GUID-E2F19D84-56C9-44E4-ABF7-1C26A827B1FD
Visible to Intel only — GUID: GUID-E2F19D84-56C9-44E4-ABF7-1C26A827B1FD
BLACS Combine Operations
This topic describes BLACS routines that combine the data to produce a result.
In a combine operation, each participating process contributes data that is combined with other processes’ data to produce a result. This result can be given to a particular process (called the destination process), or to all participating processes. If the result is given to only one process, the operation is referred to as a leave-on-one combine, and if the result is given to all participating processes the operation is referenced as a leave-on-all combine.
At present, three kinds of combines are supported. They are:
- element-wise summation
- element-wise absolute value maximization
- element-wise absolute value minimization
Note that a combine operation combines data between processes. By definition, a combine performed across a scope of only one process does not change the input data. This is why the operations (max/min/sum) are specified as element-wise. Element-wise indicates that each element of the input array will be combined with the corresponding element from all other processes’ arrays to produce the result. Thus, a 4 x 2 array of inputs produces a 4 x 2 answer array.
When the max/min comparison is being performed, absolute value is used. For example, -5 and 5 are equivalent. However, the returned value is unchanged; that is, it is not the absolute value, but is a signed value instead. Therefore, if you performed a BLACS absolute value maximum combine on the numbers -5, 3, 1, 8 the result would be -8.
The initial symbol ? in the routine names below masks the data type:
- i
-
integer
- s
-
single precision real
- d
-
double precision real
- c
-
single precision complex
- z
-
double precision complex.
Routine name |
Results of operation |
---|---|
Entries of result matrix will have the value of the greatest absolute value found in that position. |
|
Entries of result matrix will have the value of the smallest absolute value found in that position. |
|
Entries of result matrix will have the summation of that position. |