Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

- Intel Community
- Software
- Software Development SDKs and Libraries
- Intel® oneAPI Math Kernel Library
- Scalapack p*gemr2d return codes

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page

John_Young

New Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-21-2013
10:07 AM

107 Views

Scalapack p*gemr2d return codes

Hi,

I'm using the MKL Scalapack functions P*RGEM2D to distribute matrices between different contexts. Most MKL Scalapack functions take an 'info' argument to return various error information from the function. I cannot find any intel documentation for the meaning of the returned values in 'info' for the P*RGEM2D functions. Any help concerning the meaning of the info values would be appreciated.

Thanks,

John

Link Copied

5 Replies

John_Young

New Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-21-2013
10:08 AM

107 Views

Sorry, I meant P*GEMR2D and not P*RGEM2D

Zhang_Z_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-21-2013
03:59 PM

107 Views

John_Young

New Contributor I

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-21-2013
04:46 PM

107 Views

Zhang_Z_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-22-2013
12:50 PM

107 Views

Zhang_Z_Intel

Employee

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-23-2013
11:51 AM

107 Views

Before the documentation is fixed, please use the information below for descriptions of the PDGEMR2D routine. Note that it is a FORTRAN routine, but it can be called from C code as pdgemr2d_(...)

-- ScaLAPACK routine (version 1.7) --

Oak Ridge National Laboratory, Univ. of Tennessee, and Univ. of

California, Berkeley.

October 31, 1994.

SUBROUTINE PDGEMR2D( M, N,

$ A, IA, JA, ADESC,

$ B, IB, JB, BDESC,

$ CTXT)

------------------------------------------------------------------------

Purpose

=======

PDGEMR2D copies a submatrix of A on a submatrix of B.

A and B can have different distributions: they can be on different

processor grids, they can have different blocksizes, the beginning

of the area to be copied can be at a different places on A and B.

The parameters can be confusing when the grids of A and B are

partially or completly disjoint, in the case a processor calls

this routines but is either not in the A context or B context, the

ADESC[CTXT] or BDESC[CTXT] must be equal to -1, to ensure the

routine recognise this situation.

To summarize the rule:

- If a processor is in A context, all parameters related to A must be valid.

- If a processor is in B context, all parameters related to B must be valid.

- ADESC[CTXT] and BDESC[CTXT] must be either valid contexts or equal to -1.

- M and N must be valid for everyone.

- other parameters are not examined.

Notes

=====

A description vector is associated with each 2D block-cyclicly dis-

tributed matrix. This vector stores the information required to

establish the mapping between a matrix entry and its corresponding

process and memory location.

In the following comments, the character _ should be read as

"of the distributed matrix". Let A be a generic term for any 2D

block cyclicly distributed matrix. Its description vector is DESC_A:

NOTATION STORED IN EXPLANATION

--------------- -------------- --------------------------------------

DT_A (global) DESCA( DT_ ) The descriptor type.

CTXT_A (global) DESCA( CTXT_ ) The BLACS context handle, indicating

the BLACS process grid A is distribu-

ted over. The context itself is glo-

bal, but the handle (the integer

value) may vary.

M_A (global) DESCA( M_ ) The number of rows in the distributed

matrix A.

N_A (global) DESCA( N_ ) The number of columns in the distri-

buted matrix A.

MB_A (global) DESCA( MB_ ) The blocking factor used to distribute

the rows of A.

NB_A (global) DESCA( NB_ ) The blocking factor used to distribute

the columns of A.

RSRC_A (global) DESCA( RSRC_ ) The process row over which the first

row of the matrix A is distributed.

CSRC_A (global) DESCA( CSRC_ ) The process column over which the

first column of A is distributed.

LLD_A (local) DESCA( LLD_ ) The leading dimension of the local

array storing the local blocks of the

distributed matrix A.

LLD_A >= MAX(1,LOCp(M_A)).

Important notice

================

The parameters of the routine have changed in April 1996

There is a new last argument. It must be a context englobing

all processors involved in the initial and final distribution.

Be aware that all processors included in this

context must call the redistribution routine.

Parameters

==========

M (input) INTEGER.

On entry, M specifies the number of rows of the

submatrix to be copied. M must be at least zero.

Unchanged on exit.

N (input) INTEGER.

On entry, N specifies the number of cols of the submatrix

to be redistributed.rows of B. M must be at least zero.

Unchanged on exit.

A (input) DOUBLE PRECISION

On entry, the source matrix.

Unchanged on exit.

IA,JA (input) INTEGER

On entry,the coordinates of the beginning of the submatrix

of A to copy.

1 <= IA <= M_A - M + 1,1 <= JA <= N_A - N + 1,

Unchanged on exit.

ADESC (input) A description vector (see Notes above)

If the current processor is not part of the context of A

the ADESC[CTXT] must be equal to -1.

B (output) DOUBLE PRECISION

On entry, the destination matrix.

The portion corresponding to the defined submatrix are updated.

IB,JB (input) INTEGER

On entry,the coordinates of the beginning of the submatrix

of B that will be updated.

1 <= IB <= M_B - M + 1,1 <= JB <= N_B - N + 1,

Unchanged on exit.

BDESC (input) B description vector (see Notes above)

For processors not part of the context of B

BDESC[CTXT] must be equal to -1.

CTXT (input) a context englobing at least all processors included

in either A context or B context

Memory requirement :

====================

for the processors belonging to grid 0, one buffer of size block 0

and for the processors belonging to grid 1, also one buffer of size

block 1.

C interface:

pdgemr2d_ (MKL_INT *m, MKL_INT *n, double *A, MKL_INT *ia, MKL_INT *ja, MKL_INT *desc_A,

MKL_INT *B, MKL_INT *ib, MKL_INT *jb, MKL_INT *desc_B, MKL_INT *gcontext);

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

For more complete information about compiler optimizations, see our Optimization Notice.