S3L_describe prints information about a parallel array or a process grid to standard output. If an array handle is supplied in argument A, the parallel array is described. If a process grid is supplied in A, the associated process grid is described. The info_node argument specifies the MPI rank of the process on which the subgrid of interest is located.
If A is an S3L array handle, the following is provided:
Information on the rank extents and the data type of the array, as well as the starting address in memory of its subgrid.
Note: If the entire array fits on the process specified by info_node, all parts of the S3L_describe output apply to the full array. Otherwise, some parts of the output, such as subgrid size, will apply only to the portion of the array that is on process info_node.
A description of the underlying grid of processes to which data is mapped.
If A is a process grid handle, S3L_describe provides only a description of the underlying grid of processes to which data is mapped.
To determine what value to enter for info_node, run MPI_Comm_rank on the process of interest.
The C and Fortran syntax for S3L_describe are shown below.
#include <s3l/s3l-c.h> #include <s3l/s3l_errno-c.h> int S3L_describe(A, info_node) S3L_array_t A int info_node |
include `s3l/s3l-f.h' include `s3l/s3l_errno-f.h' subroutine S3L_zero_elements(A, ier) integer*8 A integer*4 info_node integer*4 ier |
S3L_describe accepts the following arguments as input:
A - May be a parallel array handle or a process grid handle.
info_node - Scalar integer variable that specifies the index or rank of the process from which the information will be gathered. Note that certain array parameters, such as the subgrid size and addresses, will vary from process to process.
S3L_describe uses the following argument for output:
ier (Fortran only) - When called from a Fortran program, S3L_describe returns error status in ier.
On success, S3L_describe returns S3L_SUCCESS.
S3L_describe performs generic checking of the validity of the arrays it accepts as arguments. If an array argument contains an invalid or corrupted value, the function terminates and an error code indicating which value of the array handle was invalid is returned. See Appendix A of this manual for a detailed list of these error codes.
In addition, the following condition will cause the function to terminate and return the associated error code.
S3L_ERR_ARG_ARRAY - A is not a valid parallel array or process grid handle.
../examples/s3l/utils/scalapack_conv.c ../examples/s3l/utils-f/scalapack_conv.f
MPI_Comm_rank(3) S3L_declare(3) S3L_declare_detailed(3) S3L_set_process_grid(3)