dsm(3I)
DSM_CHUNKSIZE, DSM_DISTRIBUTION_BLOCK, DSM_DISTRIBUTION_CYCLIC, DSM_DISTRIBUTION_STAR, DSM_ISDISTRIBUTED, DSM_ISRESHAPED, DSM_NUMCHUNKS, DSM_NUMTHREADS, DSM_REM_CHUNKSIZE, DSM_THIS_CHUNKSIZE, DSM_THIS_STARTINGINDEX, DSM_THIS_THREADNUM - Query intrinsics for distributed arrays
As shipped in IRIX 6.5.15. Added in IRIX 6.5.5.
NAME DSM_CHUNKSIZE, DSM_DISTRIBUTION_BLOCK, DSM_DISTRIBUTION_CYCLIC, DSM_DISTRIBUTION_STAR, DSM_ISDISTRIBUTED, DSM_ISRESHAPED, DSM_NUMCHUNKS, DSM_NUMTHREADS, DSM_REM_CHUNKSIZE, DSM_THIS_CHUNKSIZE, DSM_THIS_STARTINGINDEX, DSM_THIS_THREADNUM - Query intrinsics for distributed arrays SYNOPSIS DSM_CHUNKSIZE ([ARRAY=]array, [DIM=]dim) DSM_DISTRIBUTION_BLOCK ([ARRAY=]array, [DIM=]dim) DSM_DISTRIBUTION_CYCLIC ([ARRAY=]array, [DIM=]dim) DSM_DISTRIBUTION_STAR ([ARRAY=]array, [DIM=]dim) DSM_ISDISTRIBUTED ([ARRAY=]array) DSM_ISRESHAPED ([ARRAY=]array) DSM_NUMCHUNKS ([ARRAY=]array, [DIM=]dim) DSM_NUMTHREADS ([ARRAY=]array, [DIM=]dim) DSM_REM_CHUNKSIZE ([ARRAY=]array, [DIM=]dim, [INDEX=]index) DSM_THIS_CHUNKSIZE ([ARRAY=]array, [DIM=]dim, [INDEX=]index) DSM_THIS_STARTINGINDEX ([ARRAY=]array, [DIM=]dim, [INDEX=]index) DSM_THIS_THREADNUM ([ARRAY=]array, [DIM=]dim, [INDEX=]index) IMPLEMENTATION IRIX systems MIPSpro 7 Fortran 90, MIPSpro Fortran 77 STANDARDS Fortran extension DESCRIPTION You can use the Dynamic Shared Memory (DSM) functions to obtain information about an individual dimension of a distributed array. All functions work with 64-bit integers. The DSM functions are as follows: Function Purpose DSM_CHUNKSIZE Returns the chunk size (ignoring partial chunks) in the given dimension for each of BLOCK, CYCLIC, and asterisk (*) distributions. DSM_DISTRIBUTION_BLOCK Returns 0 (FALSE) or 1 (TRUE) for a query on whether or not the specified dimension has a BLOCK distribution. DSM_DISTRIBUTION_CYCLIC Returns 0 (FALSE) or 1 (TRUE) for a query on whether or not the specified dimension has a CYCLIC distribution. DSM_DISTRIBUTION_STAR Returns 0 (FALSE) or 1 (TRUE) for a query on whether or not the specified dimension has an asterisk (*) distribution. DSM_ISDISTRIBUTED Returns 0 (FALSE) or 1 (TRUE) for a query on whether or not array is distributed (regular or reshaped) or not. DSM_ISRESHAPED Returns 0 (FALSE) or 1 (TRUE) for a query on whether or not array is reshaped or not. DSM_NUMCHUNKS Returns the number of chunks (including partial chunks) in the given dim for each of BLOCK, CYCLIC, and asterisk (*) distributions. DSM_NUMTHREADS Returns the number of threads in the specified dimension of a distributed array. DSM_REM_CHUNKSIZE Returns the remaining chunk size from index to the end of the current chunk, inclusive of each end point. Essentially it is the distance from index to the end of that contiguous block, inclusive. DSM_THIS_CHUNKSIZE Returns the chunk size for the chunk containing the specified index for each of BLOCK, CYCLIC, and asterisk (*). This value may be different from DSM_CHUNKSIZE due to edge effects that can lead to a partial chunk. DSM_THIS_STARTINGINDEX Returns the starting index value of the chunk containing the supplied index. DSM_THIS_THREADNUM Returns the thread number for the chunk containing the given index value for each of BLOCK, CYCLIC, and asterisk (*) distributions. These functions accept the following arguments: array An array of any data type. dim The array dimension for which you need information. The array dimensions are numbered starting at 1. Must be of type integer. index Must be of type integer. The names of these intrinsics cannot be passed as arguments. RETURN VALUES The return value is of type integer. If you are using the MIPSpro 7 Fortran 90 compiler, the value is INTEGER(KIND=8). These functions return -1 in case of an error. For DSM_THIS_STARTINGINDEX, however, -1 can be a valid return value. SEE ALSO MIPSpro 7 Fortran 90 Commands and Directives Reference Manual mp(3F) Intrinsic Procedures Reference Manual for the printed version of this man page.