Visible to Intel only — GUID: GUID-70B37DFF-DE08-4A90-B222-A69E14B26F93
Visible to Intel only — GUID: GUID-70B37DFF-DE08-4A90-B222-A69E14B26F93
?gamx2d
Performs element-wise absolute value maximization.
Syntax
call igamx2d( icontxt, scope, top, m, n, a, lda, ra, ca, rcflag, rdest, cdest )
call sgamx2d( icontxt, scope, top, m, n, a, lda, ra, ca, rcflag, rdest, cdest )
call dgamx2d( icontxt, scope, top, m, n, a, lda, ra, ca, rcflag, rdest, cdest )
call cgamx2d( icontxt, scope, top, m, n, a, lda, ra, ca, rcflag, rdest, cdest )
call zgamx2d( icontxt, scope, top, m, n, a, lda, ra, ca, rcflag, rdest, cdest )
Input Parameters
icontxt |
INTEGER. Integer handle that indicates the context. |
scope |
CHARACTER*1. Indicates what scope the combine should proceed on. Limited to ROW, COLUMN, or ALL. |
top |
CHARACTER*1. Communication pattern to use during the combine operation. |
m |
INTEGER. The number of matrix rows to be combined. |
n |
INTEGER. The number of matrix columns to be combined. |
a |
TYPE array (lda, n). Matrix to be compared with to produce the maximum. |
lda |
INTEGER. The leading dimension of the matrix A, that is, the distance between two successive elements in a matrix row. |
rcflag |
INTEGER. If rcflag = -1, the arrays ra and ca are not referenced and need not exist. Otherwise, rcflag indicates the leading dimension of these arrays, and so must be ≥ m. |
rdest |
INTEGER. The process row coordinate of the process that should receive the result. If rdest or cdest = -1, all processes within the indicated scope receive the answer. |
cdest |
INTEGER. The process column coordinate of the process that should receive the result. If rdest or cdest = -1, all processes within the indicated scope receive the answer. |
Output Parameters
a |
TYPE array (lda, n). Contains the result if this process is selected to receive the answer, or intermediate results if the process is not selected to receive the result. |
ra |
INTEGER array (rcflag, n). If rcflag = -1, this array will not be referenced, and need not exist. Otherwise, it is an integer array (of size at least rcflag x n) indicating the row index of the process that provided the maximum. If the calling process is not selected to receive the result, this array will contain intermediate (useless) results. |
ca |
INTEGER array (rcflag, n). If rcflag = -1, this array will not be referenced, and need not exist. Otherwise, it is an integer array (of size at least rcflag x n) indicating the row index of the process that provided the maximum. If the calling process is not selected to receive the result, this array will contain intermediate (useless) results. |
Description
This routine performs element-wise absolute value maximization, that is, each element of matrix A is compared with the corresponding element of the other process's matrices. Note that the value of A is returned, but the absolute value is used to determine the maximum (the 1-norm is used for complex numbers). Combines may be globally-blocking, so they must be programmed as if no process returns until all have called the routine.