PLAPACK FORTRAN INTERFACE


Interface in preparation


Index to Chapters


Chapter 2: Templates and Linear Algebra Objects

Back to Index to Chapters -- Back to Index to Chapters -- Forward to Chapter 3

Section 2.1: Initializing PLAPACK
PLA_INIT_F
PLA_FINALIZE_F
PLA_INITIALIZED_F
PLA_BASE_COMM_F
PLA_COMM_1D_TO_2D_F
PLA_COMM_1D_TO_2D_RATIO_F

Section 2.2: Distribution Templates
PLA_TEMP_CREATE_F
PLA_TEMP_FREE_F
PLA_TEMP_COMM_ALL_INFO_F
PLA_TEMP_COMM_ROW_INFO_F
PLA_TEMP_COMM_COL_INFO_F
PLA_TEMP_NB_F
PLA_TEMP_ZERO_OR_ONE_F

Section 2.3: Linear Algebra Objects
PLA_VECTOR_CREATE_F
PLA_MVECTOR_CREATE_F
PLA_MATRIX_CREATE_F
PLA_MSCALAR_CREATE_F
PLA_PVECTOR_CREATE_F
PLA_PMVECTOR_CREATE_F
PLA_OBJ_FREE_F
PLA_OBJ_OBJTYPE_F
PLA_OBJ_DATATYPE_F
PLA_OBJ_TEMPLATE_F
PLA_OBJ_GLOBAL_INFO_F
PLA_OBJ_GLOBAL_LENGTH_F
PLA_OBJ_GLOBAL_WIDTH_F
PLA_OBJ_GLOBAL_SIZE_F
PLA_OBJ_GLOBAL_NUMVECS_F
PLA_OBJ_PROJECT_ONTO_F
PLA_OBJ_OWNER_ROW_F
PLA_OBJ_OWNER_COL_F
PLA_OBJ_GLOBAL_ALIGN_F
PLA_OBJ_GLOBAL_ALIGN_ROW_F
PLA_OBJ_GLOBAL_ALIGN_COL_F
PLA_OBJ_LOCAL_INFO_F
PLA_OBJ_LOCAL_LENGTH_F
PLA_OBJ_LOCAL_WIDTH_F
PLA_OBJ_LOCAL_BUFFER_F
PLA_OBJ_LOCAL_STRIDE_F
PLA_OBJ_LOCAL_LDIM_F
PLA_OBJ_GET_LOCAL_CONTENTS_F
PLA_OBJ_SET_LOCAL_CONTENTS_F
PLA_OBJ_SET_F
PLA_OBJ_SET_TO_ZERO_F
PLA_OBJ_SET_TO_ONE_F
PLA_OBJ_SET_TO_MINUS_ONE_F

 
PLA_INIT_F( COMM, IERROR )



Purpose: Initialize PLAPACK library.



IN     COMM             base communicator to be used by 
                        PLAPACK (INTEGER) 
OUT    IERROR           error code (INTEGER)


 
PLA_FINALIZE_F( IERROR )



Purpose: Exit PLAPACK library.



OUT    IERROR          error code (INTEGER)


 
PLA_INITIALIZED_F( INITIALIZED, IERROR )



Purpose:  Check if PLAPACK is initialized.



OUT    INITIALIZED     indicates whether PLAPACK is already 
                       initialized (INTEGER)     
OUT    IERROR          error code (INTEGER)


 
PLA_BASE_COMM_F( COMM, IERROR )



Purpose: Extract the PLAPACK base communicator.



OUT    COMM      PLAPACK base communicator (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_COMM_1D_TO_2D_F( COMM_IN, NPROWS, NPCOLS, COMM_OUT, IERROR )



Purpose: Create a communicator with a nprows by npcols topology.



IN     COMM1D    communicator from which to create 2D communictor (INTEGER)
IN     NPROWS    row dimension of 2D topology (INTEGER)
IN     NPCOLS    column dimension of 2D topology (INTEGER)
OUT    COMM2D    communicator with 2D topology (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_COMM_1D_TO_2D_RATIO_F( COMM_IN, NPROWS, NPCOLS, COMM_OUT, IERROR )



Purpose: Create a communicator with a suggested ratio (nprows/npcols = ratio).



IN     COMM1D    communicator from which to create 2D communictor (INTEGER)
IN     RATIO     suggested ratio of row and column dimensions (REAL)
OUT    COMM2D    communicator with 2D topology (INTEGER)
OUT    IERROR    error code (INTEGER)

 
PLA_TEMP_CREATE_F( NB_DISTR, ZERO_OR_ONE, TEMPL, IERROR )



Purpose: Create template for vector and matrix alignment



IN     NB        length of subvectors of inducing vector and 
                 vector template (INTEGER)
IN     ZERO_OR_ONE indexing starts with zero or one (INTEGER)
OUT    TEMPLATE  template for matrix and vector distribution (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_FREE_F( TEMPL, IERROR )



Purpose: Free a template



IN/OUT TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ALL_INFO_F( TEMPL, COMM, RANK, NUMNODES, IERROR )



Purpose: Extract communicator, calling node's rank in communicator, and number of nodes 
in communicator.



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    COMM      communicator of node mesh (INTEGER)
OUT    RANK      rank of calling node within node mesh (INTEGER)
OUT    NUMNODES  number of nodes within node mesh (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ALL_F( TEMPL, COMM, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    COMM      communicator of node mesh (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ALL_RANK_F( TEMPL, RANK, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    RANK      rank of calling node within node mesh (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ALL_SIZE_F( TEMPL, NUMNODES, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    NUMNODES  number of nodes within node mesh (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ROW_INFO_F( TEMPL, COMM, RANK, NUMNODES, IERROR )



Purpose: Extract row communictor, calling node's rank in communicator, and number of nodes in communicator.



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    COMM      communicator for calling node's row of nodes (INTEGER)
OUT    RANK      rank of calling node within row of nodes (INTEGER)
OUT    NUMNODES  number of nodes within row of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ROW_F( TEMPL, COMM, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    COMM      communicator for calling node's row of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ROW_RANK_F( TEMPL, RANK, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    RANK      rank of calling node within row of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_ROW_SIZE_F( TEMPL, NUMNODES, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    NUMNODES  number of nodes within row of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_COL_INFO_F( TEMPL, COMM, RANK, NUMNODES, IERROR )



Purpose: Extract column communictor, calling node's rank in communicator, and number of nodes in communicator.



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    COMM      communicator for calling node's column of nodes (INTEGER)
OUT    RANK      rank of calling node within column of nodes (INTEGER)
OUT    NUMNODES  number of nodes within column of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_COL_F( TEMPL, COMM, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    COMM      communicator for calling node's column of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_COL_RANK_F( TEMPL, RANK, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    RANK      rank of calling node within column of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_COMM_COL_SIZE_F( TEMPL, NUMNODES, IERROR )



Purpose:



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    NUMNODES  number of nodes within column of nodes (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_NB_F( TEMPL, NB_DISTR, IERROR )



Purpose: Extract template block size 



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    NB        block size of template (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_ZERO_OR_ONE_F( TEMPL, ZERO_OR_ONE, IERROR )



Purpose:Extract index start parameter 



IN     TEMPLATE  template for vector and matrix distribution (INTEGER)
OUT    ZERO_OR_ONE indexing may start with zero or one (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_VECTOR_CREATE_F( DATATYPE, M, TEMPL, ALIGN_ROW, X, IERROR )



Purpose:  DO NOT USE.  USE PLA_MVECTOR_CREATE_F INSTEAD 



OUT    IERROR    error code (INTEGER)


 
PLA_MVECTOR_CREATE_F( DATATYPE, M, N, TEMPL, ALIGN_ROW, X, IERROR )



Purpose: Create distributed multi-vector.



IN     DATATYPE      datatype of object (INTEGER)
IN     GLOBAL_LENGTH global length of multi-vector (INTEGER)
IN     GLOBAL_WIDTH  global width of multi-vector (INTEGER)
IN     TEMPLATE      template for vector and matrix distribution (INTEGER)
IN     GLOBAL_ALIGN  alignment to template (INTEGER)
OUT    NEW_OBJ       object describing created multi-vector (INTEGER)
OUT    IERROR        error code (INTEGER)


 
PLA_MATRIX_CREATE_F( DATATYPE, M, N, TEMPL, ALIGN_ROW, ALIGN_COL, A, IERROR )



Purpose: Create distributed matrix. 



IN     DATATYPE          datatype of object (INTEGER)
IN     GLOBAL_LENGTH     global length of matrix (INTEGER)
IN     GLOBAL_WIDTH      global width of matrix (INTEGER)
IN     TEMPLATE          template for vector and matrix distribution (INTEGER)
IN     GLOBAL_ALIGN_ROW  row alignment to template (INTEGER)
IN     GLOBAL_ALIGN_COL  column alignment to template (INTEGER)
OUT    NEW_MATRIX        object describing created matrix (INTEGER)
OUT    IERROR            error code (INTEGER)


 
PLA_MSCALAR_CREATE_F( DATATYPE, OWNER_ROW, OWNER_COL, M, N, TEMPL, X, IERROR )



Purpose: Create distributed mutltiscalar. 



IN     DATATYPE     datatype of object (INTEGER)
IN     OWNER_ROW    index of row of nodes with contains owning node(s) (INTEGER)
IN     OWNER_COL    index of column of nodes with contains owning node(s) (INTEGER)
IN     LENGTH       length of mscalar (INTEGER)
IN     WIDTH        width of mscalar (INTEGER)
IN     TEMPLATE     template for vector and matrix distribution (INTEGER)
OUT    NEW_MSCALAR  object describing created multiscalar (INTEGER)
OUT    IERROR       error code (INTEGER)


 
PLA_PVECTOR_CREATE_F( DATATYPE, PROJECT_ONTO, OWNER, M, TEMPL, ALIGN, X, IERROR )



Purpose:  DO NOT USE.  USE PLA_PMVECTOR_CREATE_F INSTEAD 



OUT    IERROR    error code (INTEGER)


 
PLA_PMVECTOR_CREATE_F( DATATYPE, PROJECT_ONTO, OWNER, M, N, TEMPL, ALIGN, X, IERROR )



Purpose: Create projected multi-vector. 



IN     DATATYPE           datatype of object (INTEGER)
IN     PROJECT_ONTO       direction onto which to project (INTEGER) 
IN     OWNER              index of row or column of nodes which (INTEGER) 
                          containts projected vector (INTEGER)
IN     GLOBAL_PROJ_LENGTH length of (projected) vector (INTEGER)
IN     GLOBAL_PROJ_WIDTH  width of (projected) vector (INTEGER)
IN     GLOBAL_ALIGN       alignment to template (INTEGER)
IN     TEMPLATE           template for vector and matrix distribution (INTEGER)
OUT    NEW_PROJ_MVECTOR   object describing created projected multi-vector (INTEGER)
OUT    IERROR             error code (INTEGER)


 
PLA_OBJ_FREE_F( OBJ, IERROR )



Purpose: Linear algebra object destructor. 


IN/OUT OBJECT    object to be freed
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_OBJTYPE_F( OBJ, OBJTYPE, IERROR )



Purpose: Extract object type from object. 



IN     OBJ       object to be queried (INTEGER)
OUT    OBJTYPE   object type of object (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_DATATYPE_F( OBJ, DATATYPE, IERROR )



Purpose: Extract datatype from object. 


IN     OBJ       object to be queried (INTEGER)
OUT    DATATYPE  datatype of object (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_TEMPLATE_F( OBJ, TEMPL, IERROR )



Purpose: Extract template from object. 


IN     OBJ       object to be queried (INTEGER)
OUT    TEMPLATE  template (INTEGER)
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_GLOBAL_INFO_F( OBJ, GLOBAL_LENGTH, GLOBAL_WIDTH, PROJECT_ONTO, OWNER_ROW, OWNER_COL, GLOBAL_ALIGN_ROW, GLOBAL_ALIGN_COL, IERROR )



Purpose: Extract global information from linear algebra object. 



IN     OBJ              object to be queried (INTEGER)
OUT    GLOBAL_LENGTH    global row dimension of object (INTEGER)
OUT    GLOBAL_WIDTH     global column dimension of object (INTEGER)
OUT    PROJECT_ONTO     direction of projection (INTEGER)
OUT    OWNER_ROW        row index of owning node(s) (INTEGER)
OUT    OWNER_COL        column index of owning node(s) (INTEGER)
OUT    GLOBAL_ALIGN(_ROW)  (row) alignment to template (INTEGER)
OUT    GLOBAL_ALIGN_COL    column alignment to template (INTEGER)
OUT    IERROR           error code (INTEGER)


 
PLA_OBJ_GLOBAL_LENGTH_F( OBJ, LENGTH, IERROR )



Purpose: Extract global length from linear algebra object.


IN     OBJ            object to be queried (INTEGER)
OUT    GLOBAL_LENGTH  global row dimension of object (INTEGER)
OUT    IERROR         error code (INTEGER)


 
PLA_OBJ_GLOBAL_WIDTH_F( OBJ, WIDTH, IERROR )



Purpose: Extract global width from linear algebra object.


IN     OBJ           object to be queried (INTEGER)
OUT    GLOBAL_WIDTH  global column dimension of object (INTEGER)
OUT    IERROR        error code (INTEGER)


 
PLA_OBJ_GLOBAL_SIZE_F( OBJ, SIZE, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_GLOBAL_NUMVECS_F( OBJ, NUMVECS, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_PROJECT_ONTO_F( OBJ, PROJECT_ONTO, IERROR )



Purpose: Extract projection information from linear algebra object.  


IN     OBJ             object to be queried
OUT    PROJECT_ONTO    direction of projection
OUT    IERROR          error code (INTEGER)


 
PLA_OBJ_OWNER_ROW_F( OBJ, OWNER_ROW, IERROR )



Purpose: Extract mesh row owner information rom linear algebra object.  


IN         obj                 object to be queried
OUT        owner_row           row index of owning node(s)
OUT        owner_col           column index of owning node(s)
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_OWNER_COL_F( OBJ, OWNER_COL, IERROR )



Purpose: Extract mesh column owner information rom linear algebra object.  


IN         obj                 object to be queried
OUT        owner_col           column index of owning node(s)
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_GLOBAL_ALIGN_F( OBJ, GLOBAL_ALIGN, IERROR )



Purpose: Extract global alignment from linear algebra object.  


IN         obj                 object to be queried
OUT        global_align        Alignment to template
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_GLOBAL_ALIGN_ROW_F( OBJ, GLOBAL_ALIGN_ROW, IERROR )



Purpose: Extract global row alignment from linear algebra object.  


IN         obj                 object to be queried
OUT        global_align_row  row alignment to template
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_GLOBAL_ALIGN_COL_F( OBJ, GLOBAL_ALIGN_COL, IERROR )



Purpose: Extract global column alignment from linear algebra object.  


IN         obj                 object to be queried
OUT        global_align_col    column alignment to template
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_LOCAL_INFO_F( OBJ, LOCAL_LENGTH, LOCAL_WIDTH, DUMMY, LOCAL_STRIDE, LOCAL_LDIM, IERROR )



Purpose: Extract local information from linear algebra object. 



IN     OBJ            object to be queried
OUT    LOCAL_LENGTH   local row dimension of object
OUT    LOCAL_WIDTH    local column dimension of object
OUT    LOCAL_BUFFER   address of local data
OUT    LOCAL_STRIDE   stride between entries in a column or vector
OUT    LOCAL_LDIM     leading dimension of array holding local data
OUT    IERROR         error code (INTEGER)


 
PLA_OBJ_LOCAL_LENGTH_F( OBJ, LOCAL_LENGTH, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_LOCAL_WIDTH_F( OBJ, LOCAL_WIDTH, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_LOCAL_BUFFER_F( OBJ, VOID **local_BUFFER, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_LOCAL_STRIDE_F( OBJ, LOCAL_STRIDE, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_LOCAL_LDIM_F( OBJ, LOCAL_LDIM, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_GET_LOCAL_CONTENTS_F( OBJ, TRANS, M, N, BUF, LDA, STRIDE, IERROR )



Purpose: Extract the local data from the given object. 



IN     OBJ          global object
IN     TRANS        indicates whether to transpose data
OUT    M            row dimension of extracted data
OUT    N            column dimension of extracted data
OUT    BUF          address where data is to be put (APPROPRIATE DATATYPE)
IN     LDIM         leading dimension of buffer where data is put
IN     STRIDE       stride of buffer where data is put
OUT    IERROR       error code (INTEGER)


 
PLA_OBJ_SET_LOCAL_CONTENTS_F( TRANS, M, N, BUF, LDA, STRIDE, OBJ, IERROR )



Purpose: Set the local data from the given object. 



IN     TRANS     indicates whether to transpose data
IN     M         row dimension of data buffer
IN     N         column dimension of data buffer
IN     BUF       address where data buffer (APPROPRIATE DATATYPE)
IN     LDIM      leading dimension of buffer where data is put
IN     STRIDE    stride of dataffer 
IN/OUT OBJ       global object
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_SET_F( OBJ, DATATYPE, VALUE, IERROR )



Purpose: Sets all entries in the linear algebra object to value. 
The value can be specified in an MPI datatype, and 
is cast to the appropriate type as the object.



IN/OUT OBJ          linear algebra object
IN     DATATYPE     datatype of value
IN     VALUE        value to be used for initialization
OUT    IERROR       error code (INTEGER)


 
PLA_OBJ_SET_TO_ONE_F( OBJ, IERROR )



Purpose: Set all entries of object to one



IN/OUT OBJ       linear algebra object
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_SET_TO_ZERO_F( OBJ, IERROR )



Purpose: Set all entries of object to zero



IN/OUT OBJ       linear algebra object
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_SET_TO_MINUS_ONE_F( OBJ, IERROR )



Purpose: Set all entries of object to negative one



IN/OUT OBJ       linear algebra object
OUT    IERROR    error code (INTEGER)

Chapter 3: Advanced Linear Algebra Object Manipulation

Back to Index to Chapters -- Back to Chapter 2 -- Forward to Chapter 4

Section 3.1: Creating Views into Objects
PLA_OBJ_VIEW_F
PLA_OBJ_VIEW_ALL_F
PLA_OBJ_VIEW_SWAP_F


Section 3.2: Splitting of LAObjs
PLA_OBJ_SPLIT_4_F
PLA_OBJ_HORZ_SPLIT_2_F
PLA_OBJ_VERT_SPLIT_2_F


Section 3.3: Shifting of LAObjs
PLA_OBJ_VIEW_SHIFT_F


Section 3.4: Determining Where to Split
PLA_OBJ_SPLIT_SIZE_F
Section 3.5: Creating Objects "Conformal to" ...
PLA_VECTOR_CREATE_CONF_TO_F
PLA_MVECTOR_CREATE_CONF_TO_F
PLA_PVECTOR_CREATE_CONF_TO_F
PLA_PMVECTOR_CREATE_CONF_TO_F
PLA_MATRIX_CREATE_CONF_TO_F
PLA_MSCALAR_CREATE_CONF_TO_F
PLA_CREATE_CONSTANTS_CONF_TO_F


Section 3.6: Annotating Object Orientation
PLA_OBJ_SET_ORIENTATION_F
PLA_OBJ_GET_ORIENTATION_F



Section 3.7: Casting Object Types
PLA_OBJ_OBJTYPE_CAST_F

 
PLA_OBJ_VIEW_F( OBJ, GLOBAL_LENGTH, GLOBAL_WIDTH, ALIGN_ROW, ALIGN_COL, OBJ_NEW, IERROR )



Purpose: Create a view (reference) into an existing linear algebra object. 



IN     OLD_OBJ        object into which view is taken
IN     GLOBAL_LENGTH  row dimension of view
IN     GLOBAL_WIDTH   column dimension of view
IN     ALIGN_ROW      row index in old object of 
                      upper-left-hand element of view
IN     ALIGN_COL      column index in old object of 
                      upper-left-hand element of view
IN/OUT NEW_OBJ        created view
OUT    IERROR         error code (INTEGER)


 
PLA_OBJ_VIEW_ALL_F( OBJ, OBJ_NEW, IERROR )



Purpose: Create a view (reference) into all of existing linear algebra object. 



IN     OLD_OBJ   object into which view is taken
IN/OUT NEW_OBJ   created view
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_VIEW_SWAP_F( OBJ1, OBJ2, IERROR )



Purpose: Swaps two views. 



IN/OUT OBJ1      linear algebra object
IN/OUT OBJ2      linear algebra object
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_SPLIT_4_F( OBJ, SIZE_ROW, SIZE_COL, OBJ_11, OBJ_12, OBJ_21, OBJ_22, IERROR )



Purpose: Split linear algebra object into four quadrants 



IN     OBJ               object to be split
IN     LENGTH            row dimension of block (as indicated below) 
IN     WIDTH             column dimension of block (as indicated below) 
OUT    UPPER_LEFT_OBJ    new object for upper-left block
OUT    UPPER_RIGHT_OBJ   new object for upper-right block
OUT    LOWER_LEFT_OBJ    new object for lower-left block
OUT    LOWER_RIGHT_OBJ   new object for lower-right block
OUT    IERROR            error code (INTEGER)

Here the value of length and width determine the size of one block while
their sign determines which block the length and widht refer to.
If :
length >= 0        width >= 0            UPPER_LEFT_OBJ
length <  0        width >= 0            LOWER_LEFT_OBJ
length >= 0        width <  0            UPPER_RIGHT_OBJ
length <  0        width <  0            LOWER_RIGHT_OBJ


 
PLA_OBJ_HORZ_SPLIT_2_F( OBJ, SIZE, OBJ_1, OBJ_2, IERROR )



Purpose:  Split linear algebra object into top and bottom 



IN     OBJ       object to be split
IN     LENGTH    row dimension of block (as indicated below) 
OUT    UPPER_OBJ new object for upper block
OUT    LOWER_OBJ new object for lower block
OUT    IERROR    error code (INTEGER)

If : 
length >= 0     length specifies   UPPER_OBJ
length <  0     length specifies   LOWER_OBJ


 
PLA_OBJ_VERT_SPLIT_2_F( OBJ, SIZE, OBJ_1, OBJ_2, IERROR )



Purpose: Split linear algebra object into left and right



IN     OBJ       object to be split
IN     WIDTH     column dimension of block (as indicated below) 
OUT    LEFT_OBJ  new object for left block
OUT    RIGHT_OBJ new object for right block
OUT    IERROR    error code (INTEGER)

If : 
width >= 0     width specifies   LEFT_OBJ
width <  0     width specifies   RIGHT_OBJ


 
PLA_OBJ_VIEW_SHIFT_F( OBJ,       TOP, 
                           LEFT,         RIGHT,
                                BOTTOM,          IERROR )



Purpose: Shift the boundaries of the view of the linear algebra object 



IN/OUT OBJ           object to be grown [shifted]
IN     LENGTH_TOP    length to shift top boundary  
IN     WIDTH_LEFT    width to shift left boundary  
IN     WIDTH_RIGHT   width to shift right boundary 
IN     LENGTH_BOTTOM length to shift bottom boundary
OUT    IERROR        error code (INTEGER)

Note : Positive is down/right negative is up/left (as if you were 
in quadrant IV in the cartesian plane.


 
PLA_OBJ_SPLIT_SIZE_F( OBJ, SIDE, SIZE, OWNER, IERROR )



Purpose:  Compute size of split to next block boundary.



IN     OBJ       object to be split
IN     SIDE      side of split
OUT    SIZE      size to next template subblock split
OUT    OWNER     index of row or column of nodes that owns the split block
OUT    IERROR    error code (INTEGER)


 
PLA_VECTOR_CREATE_CONF_TO_F( OBJ,  NEW_OBJ, IERROR )



Purpose: DO NOT USE.  USE PLA_MVECTOR_CREATE_CONF_TO_F INSTEAD.



IN     OBJ         original object
OUT    NEW_VECTOR  created object
OUT    IERROR      error code (INTEGER)


 
PLA_PVECTOR_CREATE_CONF_TO_F( OBJ,  PROJECT_ONTO,
				  owner, NEW_OBJ, IERROR )



Purpose: Create mvector conformal to given object. 



IN     OBJ           original object
IN     GLOBAL_WIDTH  number of vectors in mvector
OUT    NEW_MVECTOR   created object
OUT    IERROR        error code (INTEGER)


 
PLA_PMVECTOR_CREATE_CONF_TO_F( OBJ, PROJECT_ONTO,
				  owner, NUM_VECTORS, NEW_OBJ, IERROR )



Purpose: Create projected mvector conformal to given object.



IN     OBJ           original object
IN     PROJECT_ONTO  mesh direction onto which to project
IN     OWNER         index of row or column of nodes which 
                     contains owning nodes
IN     NUM_VECTORS   number of vectors in multivector
OUT    NEW_PMVECTOR  created object
OUT    IERROR        error code (INTEGER)


 
PLA_MATRIX_CREATE_CONF_TO_F( OBJ,  NEW_OBJ, IERROR )



Purpose: Create matrix conformal to given object (must be a matrix).



IN     MATRIX       original object
OUT    NEW_MATRIX   created object
OUT    IERROR       error code (INTEGER)


 
PLA_MSCALAR_CREATE_CONF_TO_F( OBJ,  OWNER_ROW, 
				  OWNER_COL, NEW_OBJ, IERROR )



Purpose: Create multiscalar conformal to given object.



IN     OBJ          original object
IN     OWNER_ROW    index of row of nodes that contains owning node(s)
IN     OWNER_COL    index of column of nodes that contains owning node(s)
OUT    NEW_MSCALAR  created object (multiscalar)
OUT    IERROR       error code (INTEGER)


 
PLA_OBJ_SET_ORIENTATION_F( OBJ,  PROJECT_ONTO, IERROR )



Purpose: Set the orientation of a matrix panel. 



IN/OUT OBJ            original object
IN     PROJECT_ONTO   annotation indicating orientation
OUT    IERROR         error code (INTEGER)


 
PLA_OBJ_GET_ORIENTATION_F( OBJ,  PROJECT_ONTO, IERROR )



Purpose: Return the orientation of a matrix panel. 



IN/OUT OBJ           original object
IN     PROJECT_ONTO  annotation indicating orientation
OUT    IERROR        error code (INTEGER)


 
PLA_OBJ_OBJTYPE_CAST_F( OBJ,  OBJTYPE, IERROR )



Purpose: Cast the linear algebra object to have given object type.



IN/OUT OBJ       original object
IN     OBJTYPE   new object type
OUT    IERROR    error code (INTEGER)


Chapter 4: Application Program Interface

Back to Index to Chapters -- Back to Chapter 3 -- Forward to Chapter 5

Section 4.2: API-Activation
PLA_API_BEGIN_F
PLA_API_END_F
PLA_API_STATE_F

Section 4.3: Opening and Closing an Object
PLA_OBJ_API_OPEN_F
PLA_OBJ_API_CLOSE_F
PLA_OBJ_API_MODE_F
Section 4.4: Accessing a Vector
PLA_API_AXPY_VECTOR_TO_GLOBAL_F
PLA_API_AXPY_GLOBAL_TO_VECTOR_F
PLA_API_MULTI_AXPY_VECTOR_TO_GLOBAL_F
PLA_API_MULTI_AXPY_GLOBAL_TO_VECTOR_F

Section 4.5: Accessing a Matrix
PLA_API_AXPY_MATRIX_TO_GLOBAL_F
PLA_API_AXPY_GLOBAL_TO_MATRIX_F
PLA_API_MULTI_AXPY_MATRIX_TO_GLOBAL_F
PLA_API_MULTI_AXPY_GLOBAL_TO_MATRIX_F

Section 4.6: Completion and Synchronization
PLA_API_SYNC_F

 
PLA_API_BEGIN_F( IERROR )



Purpose: Activites the API active state.



OUT    IERROR    error code (INTEGER)


 
PLA_API_END_F( IERROR )



Purpose: De-activates the API active state. 



OUT    IERROR    error code (INTEGER)


 
PLA_API_STATE_F( STATE, IERROR )



Purpose:  Determines the state of a linear algebra object. 



OUT     state    State of linear algebra object
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_API_OPEN_F(  OBJ, IERROR )



Purpose: Puts object into asynchronous mode(makes PLA_Obj_API_ operations
on the object allowable). 



IN/OUT     obj    Linear algebra object (to be) placed in asynchronous mode.
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_API_CLOSE_F(  OBJ, IERROR )



Purpose: Puts object into synchronous mode (disallows PLA_Obj_API_
operations on the object).



IN/OUT     obj    Linear algebra object (to be) taken out of asynchronous mode.
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_API_MODE_F( OBJ, MODE, IERROR )



Purpose: Returns the mode of the linear algebra object (PLA_MODE_CLOSED
or PLA_MODE_OPEN). 



IN     obj       Linear algebra object
OUT    mode      Mode of linear algebra object
OUT    IERROR    error code (INTEGER)


 
PLA_API_AXPY_VECTOR_TO_GLOBAL_F( SIZE, 
				     VOID *alpha, VOID *x, 
				     STRIDE, X_GLOBAL, 
				     DISP_ROW, IERROR )



Purpose: Add local vector buffer data to global vector object.



IN            size              Length of vector
IN          * alpha             Scalar in axpy operation
IN          * local_obj         Local vector values 
IN            local_inc         Local vector increment (stride)
IN/OUT        laobj             Global vector (target linear algebra object)
IN            disp              Global vector displacement
OUT    IERROR    error code (INTEGER)


 
PLA_API_AXPY_GLOBAL_TO_VECTOR_F( SIZE, 
				     VOID *alpha, X_GLOBAL,
				     disp_ROW, 
                                     VOID *x, STRIDE, IERROR )



Purpose: Add piece of global vector object to local linear algebra
object. 



IN            size              Length of vector
IN          * alpha             Scalar in axpy operation
IN            laobj             Global vector object
IN            displ             Displacement  (in global object)
IN/OUT      * local_obj         Local linear algebra object (target) buffer
IN            local_inc         Local vector increment (stride)
OUT    IERROR    error code (INTEGER)


 
PLA_API_MULTI_AXPY_VECTOR_TO_GLOBAL_F(  NSUB, SIZES, 
				     VOID *alpha, VOID *local_VECTOR, 
				     STRIDE, X_GLOBAL, 
				     DISPS_ROW, IERROR )



Purpose: Add local sub-vector buffer data chunks to global vector
object. 



IN            nsub              Number of subvectors
IN          * size              Length of subvectors
IN          * alpha             Scalar in axpy operation
IN          * local_vector      Local vector values 
IN            local_stride      Local vector increment (stride)
IN/OUT        laobj             Global vector (target linear algebra object)
IN          * displs            Global vector displacements
OUT    IERROR    error code (INTEGER)


 
PLA_API_MULTI_AXPY_GLOBAL_TO_VECTOR_F( NSUB, SIZES, 
				     VOID *alpha, X_GLOBAL,
				     disps_ROW, 
                                     VOID *x, STRIDE, IERROR )



Purpose: Add pieces of global vector object to local vector.



IN            nsub              Number of subvectors
IN          * size              Length of subvectors
IN          * alpha             Scalar in axpy operation
IN            laobj             Global vector object
IN          * displs            Displacements  (in global object)
IN/OUT      * local_vector      Local linear algebra object (target) buffer
IN            local_stride      Local vector increment (stride)
OUT    IERROR    error code (INTEGER)


 
PLA_API_AXPY_MATRIX_TO_GLOBAL_F( SIZE_ROW, SIZE_COL,
				    void *alpha, VOID *a, 
				    LDA, A_GLOBAL, 
				    DISP_ROW, DISP_COL, IERROR )



Purpose: Add local matrix buffer data to global matrix object. 



IN            size_row          Length of matrix
IN            size_col          Width of matrix
IN          * alpha             Scalar in axpy operation
IN          * local_obj         Local matrix values (buffer)
IN            local_ldim        Local matrix leading dimension
IN/OUT        obj               Global matrix (target linear algebra object)
IN            disp_row          Global matrix row displacement
IN            disp_col          Global matrix column displacement
OUT    IERROR    error code (INTEGER)


 
PLA_API_AXPY_GLOBAL_TO_MATRIX_F( SIZE_ROW, SIZE_COL,
				     void *alpha, A_GLOBAL, 
				     DISP_ROW, DISP_COL,
				     void *a, LDA, IERROR )



Purpose: Add piece of global matrix object to local linear algebra
object (matrix). 



IN            size_row          Length of matrix
IN            size_col          Width of matrix
IN          * alpha             Scalar in axpy operation
IN            obj               Global vector object
IN            displ_row         Row displacement  (in global object)
IN            displ_col         Column displacement  (in global object)
IN/OUT      * local_matrix      Local linear algebra object (target) buffer
IN            local_ldim         Local matrix leading dimension
OUT    IERROR    error code (INTEGER)


 
PLA_API_MULTI_AXPY_MATRIX_TO_GLOBAL_F( NSUB_ROW, NSUB_COL,
			            size_ROW, SIZE_COL,
				    void *alpha, VOID *a, 
				    LDA, A_GLOBAL, 
				    DISP_ROW, DISP_COL, IERROR )



Purpose: Add local sub-matrix buffer data chunks to global matrix
object. 



IN            nsub_row          Number of row subblocks to map
IN            nsub_row          Number of column subblocks to map
IN          * size_row          Row block lengths
IN          * size_col          Column block widths
IN          * alpha             Scalar in axpy operation
IN          * local_matrix      Local matrix values 
IN            local_ldim        Local matrix leading dimension
IN/OUT        obj               Global matrix (target linear algebra object)
IN          * disp_row          Global matrix row displacements
IN          * disp_col          Global matrix column displacements
OUT    IERROR    error code (INTEGER)


 
PLA_API_MULTI_AXPY_GLOBAL_TO_MATRIX_F( NSUB_ROW, NSUB_COL,
			             size_ROW, SIZE_COL,
				     void *alpha, A_GLOBAL, 
				     DISP_ROW, DISP_COL,
				     void *a, LDA, IERROR )



Purpose: Add pieces of global matrix object to local matrix. 



IN            nsub_row          Number of row subblocks to map
IN            nsub_row          Number of column subblocks to map
IN          * size_row          Row block lengths
IN          * size_col          Column block widths
IN          * alpha             Scalar in axpy operation
IN            obj               Global matrix
IN          * disp_row          Global matrix row displacements
IN          * disp_col          Global matrix column displacements
IN/OUT      * local_matrix      Local matrix values 
IN            local_ldim        Local matrix leading dimension
OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_API_SYNC_F( OBJ, IERROR )



Purpose: Synchronizes all nodes w.r.t. the given object and completes
all pending "API_axpy" operations on the object. 



IN/OUT OBJ       Linear algebra object
OUT    IERROR    error code (INTEGER)


Chapter 5: Data Duplication and Consolidation

Back to Index to Chapters -- Back to Chapter 4 -- Forward to Chapter 6

Section 5.1: Copy
PLA_COPY_F
PLA_COPY_X_F

Section 5.2: Reduce
PLA_REDUCE_F
PLA_REDUCE_X_F
Section 5.3: Pipelining Computation and Communication
PLA_TEMP_SET_COMM_DIR_F
PLA_TEMP_GET_COMM_DIR_F


 
PLA_COPY_F( OBJ_FROM, OBJ_TO, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_COPY_X_F( SHAPE, OBJ_FROM, OBJ_TO, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_REDUCE_F( OBJ_FROM, OP, OBJ_TO, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_REDUCE_X_F( SHAPE, OBJ_FROM, OBJ_ALPHA, 
		    OBJ_TO, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_SET_COMM_DIR_F( TEMPL, MESH_DIMENSION, DIRECTION, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_TEMP_GET_COMM_DIR_F( TEMPL, MESH_DIMENSION, DIRECTION, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


Chapter 6: Vector-Vector Operations

Back to Index to Chapters -- Back to Chapter 5 -- Forward to Chapter 7

Local level-1 BLAS:
PLA_LOCAL_COPY_F
PLA_LOCAL_SWAP_F
PLA_LOCAL_SCAL_F
PLA_LOCAL_INV_SCAL_F
PLA_LOCAL_AXPY_F
PLA_LOCAL_DOT_F
PLA_LOCAL_NRM2_F
PLA_LOCAL_ASUM_F
PLA_LOCAL_IAMAX_F
Global level-1 BLAS:

PLA_SWAP_F
PLA_SCAL_F
PLA_INV_SCAL_F
PLA_AXPY_F
PLA_DOT_F
PLA_NRM2_F
PLA_ASUM_F
PLA_IAMAX_F

 
PLA_LOCAL_COPY_F( X, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SWAP_F( X, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SCAL_F( ALPHA, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_INV_SCAL_F( ALPHA, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_AXPY_F( ALPHA, X, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_DOT_F( X, Y, ALPHA , IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_ASUM_F( X, ALPHA , IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_NRM2_F( X, ALPHA , IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_IAMAX_F( X, ALPHA, INDEX, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SWAP_F( X, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SCAL_F( ALPHA, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_INV_SCAL_F( ALPHA, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_AXPY_F( ALPHA, X, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_DOT_F( X, Y, ALPHA , IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_ASUM_F( X, ALPHA , IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_NRM2_F( X, ALPHA , IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_IAMAX_F( X, ALPHA, INDEX, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


Chapter 7: Matrix-Vector Operations

Back to Index to Chapters -- Back to Chapter 6 -- Forward to Chapter 8

Local level-2 BLAS:
PLA_LOCAL_GEMV_F
PLA_LOCAL_SYMV_F
PLA_LOCAL_TRMV_F
PLA_LOCAL_TRSV_F
PLA_LOCAL_GER_F
PLA_LOCAL_SYR_F
PLA_LOCAL_SYR2_F
Global level-2 BLAS:
PLA_GEMV_F
PLA_SYMV_F
PLA_TRMV_F
PLA_TRSV_F
PLA_GER_F
PLA_SYR_F
PLA_SYR2_F

 
PLA_LOCAL_GEMV_F( TRANS, ALPHA, A, X, BETA, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SYMV_F( UPLO, ALPHA, A, X, BETA, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_GER_F( ALPHA, X, Y, A, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SYR_F( ALPHA, X, A, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SYR2_F( UPLO, ALPHA, X, Y, A, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_TRMV_F( UPLO, TRANS, DIAG, A, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_TRSV_F( UPLO, TRANS, DIAG, A, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_GEMV_F( TRANS, ALPHA, A, X, BETA, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYMV_F( UPLO, ALPHA, A, X, BETA, Y, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_GER_F( ALPHA, X, Y, A, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYR_F( ALPHA, X, A, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYR2_F( UPLO, ALPHA, X, Y, A, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_TRMV_F( UPLO, TRANS, DIAG, A, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_TRSV_F( UPLO, TRANS, DIAG, A, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


Chapter 8: Matrix-Matrix Operations

Back to Index to Chapters -- Back to Chapter 7 -- Back to Index to Chapters --

Local level-3 BLAS:
PLA_LOCAL_GEMM_F
PLA_LOCAL_SYMM_F
PLA_LOCAL_SYRK_F
PLA_LOCAL_SYR2K_F
PLA_LOCAL_TRMM_F
PLA_LOCAL_TRSM_F
Global level-3 BLAS:
PLA_GEMM_F
PLA_SYMM_F
PLA_SYRK_F
PLA_SYR2K_F
PLA_TRMM_F
PLA_TRSM_F

 
PLA_LOCAL_GEMM_F( TRANSA, TRANSB, ALPHA, A, B, 
                                                BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SYMM_F( SIDE, UPLO, ALPHA, A, B, 
                                            BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SYRK_F( UPLO, TRANS, 
		      ALPHA, A, 
                      BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SYR2K_F( SIDE, TRANS, ALPHA, A, B, 
                                                BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_TRMM_F( SIDE, UPLO, TRANS, DIAG,
			   alpha, A, B, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_TRSM_F( SIDE, UPLO, TRANS, DIAG,
			   alpha, A, B, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_GEMM_F( TRANSA, TRANSB, ALPHA, A, B, 
                                                BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYMM_F( SIDE, UPLO, ALPHA, A, B, 
                                            BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYRK_F( UPLO, TRANS, 
		      ALPHA, A, 
                      BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYR2K_F( SIDE, TRANS, ALPHA, A, B, 
                                                BETA,  C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_TRMM_F( SIDE, UPLO, TRANS, DIAG,
			   alpha, A, B, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_TRSM_F( SIDE, UPLO, TRANS, DIAG,
			   alpha, A, B, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


Miscellaneous routines

Back to Index to Chapters -- Back to Chapter 8 -- Back to Index to Chapters --

New Local Routines:
PLA_LOCAL_EQUAL_ZERO_F
PLA_LOCAL_INVERT_SIGN_F
PLA_LOCAL_SIGN_F
PLA_LOCAL_SQRT_F
New object manipulation routines:
PLA_CREATE_CONSTANTS_CONF_TO_F
PLA_OBJ_SET_TO_IDENTITY_F
PLA_OBJ_SPLIT_SIZE_TO_NEXT_PROC_F
Specialized BLAS routines:
PLA_DOT_ADD_F
PLA_DOT_X_F
PLA_SCAL_X_F
PLA_SYRK_PERFORM_LOCAL_PART_F
Specialized communication routines:
PLA_COPY_ADD_F

 
PLA_LOCAL_EQUAL_ZERO_F( ALPHA, RESULT, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_INVERT_SIGN_F( ALPHA, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SIGN_F( ALPHA, RESULT, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_LOCAL_SQRT_F( ALPHA, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_CREATE_CONSTANTS_CONF_TO_F( OBJ, MINUS_ONE, ZERO, ONE, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_SET_TO_IDENTITY_F( ALPHA, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_OBJ_SPLIT_SIZE_TO_NEXT_PROC_F( OBJ, SIDE, SIZE, OWNER, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_DOT_ADD_F( X, Y, ALPHA, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_DOT_X_F( ALPHA, X, Y, BETA, RESULT, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_DOT_ADD_F( X, Y, ALPHA, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SCAL_X_F( SHAPE, ALPHA, X, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)


 
PLA_SYRK_PERFORM_LOCAL_PART_F( UPLO, ALPHA, A, BETA, C, IERROR )



Purpose:



OUT    IERROR    error code (INTEGER)



Alphabetical Index

- A -
PLA_API_AXPY_GLOBAL_TO_MATRIX_F
PLA_API_AXPY_GLOBAL_TO_VECTOR_F
PLA_API_AXPY_MATRIX_TO_GLOBAL_F
PLA_API_AXPY_VECTOR_TO_GLOBAL_F
PLA_API_BEGIN_F
PLA_API_END_F
PLA_API_MULTI_AXPY_GLOBAL_TO_MATRIX_F
PLA_API_MULTI_AXPY_GLOBAL_TO_VECTOR_F
PLA_API_MULTI_AXPY_MATRIX_TO_GLOBAL_F
PLA_API_MULTI_AXPY_VECTOR_TO_GLOBAL_F
PLA_API_STATE_F
PLA_ASUM_F
PLA_AXPY_F

- B -
PLA_BASE_COMM_F

- C -
PLA_CREATE_CONSTANTS_CONF_TO_F
PLA_COMM_1D_TO_2D_F
PLA_COMM_1D_TO_2D_RATIO_F
PLA_COPY_F
PLA_COPY_ADD_F
PLA_COPY_X_F

- D -
PLA_DOT_F

- E -
PLA_ENVIRON_NB_ALG_F

- F -
PLA_FINALIZE_F

- G -
PLA_GEMM_F
PLA_GEMV_F
PLA_GER_F

- I -
PLA_IAMAX_F
PLA_INIT_F
PLA_INITIALIZED_F
PLA_INV_SCAL_F

- L -
PLA_LOCAL_ASUM_F
PLA_LOCAL_AXPY_F
PLA_LOCAL_COPY_F
PLA_LOCAL_DOT_F
PLA_LOCAL_DOT_ADD_F
PLA_LOCAL_DOT_X_F
PLA_LOCAL_EQUAL_ZERO_F
PLA_LOCAL_GEMM_F
PLA_LOCAL_GEMV_F
PLA_LOCAL_GER_F
PLA_LOCAL_IAMAX_F
PLA_LOCAL_INV_SCAL_F
PLA_LOCAL_INVERT_SIGN_F
PLA_LOCAL_NRM2_F
PLA_LOCAL_SCAL_F
PLA_LOCAL_SIGN_F
PLA_LOCAL_SQRT_F
PLA_LOCAL_SWAP_F
PLA_LOCAL_SYMM_F
PLA_LOCAL_SYMV_F
PLA_LOCAL_SYR_F
PLA_LOCAL_SYR2_F
PLA_LOCAL_SYR2K_F
PLA_LOCAL_SYRK_F
PLA_LOCAL_TRMM_F
PLA_LOCAL_TRMV_F
PLA_LOCAL_TRSM_F
PLA_LOCAL_TRSV_F

- M -
PLA_MATRIX_CREATE_F
PLA_MATRIX_CREATE_CONF_TO_F
PLA_MSCALAR_CREATE_F
PLA_MSCALAR_CREATE_CONF_TO_F
PLA_MVECTOR_CREATE_F
PLA_MVECTOR_CREATE_CONF_TO_F

- N -
PLA_NRM2_F

- O -
PLA_OBJ_API_CLOSE_F
PLA_OBJ_API_MODE_F
PLA_OBJ_API_OPEN_F
PLA_OBJ_API_SYNC_F
PLA_OBJ_DATATYPE_F
PLA_OBJ_FREE_F
PLA_OBJ_GET_LOCAL_CONTENTS_F
PLA_OBJ_GET_ORIENTATION_F
PLA_OBJ_GLOBAL_ALIGN_F
PLA_OBJ_GLOBAL_ALIGN_COL_F
PLA_OBJ_GLOBAL_ALIGN_ROW_F
PLA_OBJ_GLOBAL_INFO_F
PLA_OBJ_GLOBAL_LENGTH_F
PLA_OBJ_GLOBAL_NUMVECS_F
PLA_OBJ_GLOBAL_SIZE_F
PLA_OBJ_GLOBAL_WIDTH_F
PLA_OBJ_HORZ_SPLIT_2_F
PLA_OBJ_LOCAL_BUFFER_F
PLA_OBJ_LOCAL_INFO_F
PLA_OBJ_LOCAL_LDIM_F
PLA_OBJ_LOCAL_LENGTH_F
PLA_OBJ_LOCAL_STRIDE_F
PLA_OBJ_LOCAL_WIDTH_F
PLA_OBJ_OBJTYPE_F
PLA_OBJ_OBJTYPE_CAST_F
PLA_OBJ_OWNER_COL_F
PLA_OBJ_OWNER_ROW_F
PLA_OBJ_PROJECT_ONTO_F
PLA_OBJ_SET_F
PLA_OBJ_SET_LOCAL_CONTENTS_F
PLA_OBJ_SET_ORIENTATION_F
PLA_OBJ_SET_TO_IDENTITY_F
PLA_OBJ_SET_TO_MINUS_ONE_F
PLA_OBJ_SET_TO_ONE_F
PLA_OBJ_SET_TO_ZERO_F
PLA_OBJ_SPLIT_4_F
PLA_OBJ_SPLIT_SIZE_F
PLA_OBJ_SPLIT_SIZE_TO_NEXT_PROC_F
PLA_OBJ_TEMPLATE_F
PLA_OBJ_VERT_SPLIT_2_F
PLA_OBJ_VIEW_F
PLA_OBJ_VIEW_ALL_F
PLA_OBJ_VIEW_SHIFT_F
PLA_OBJ_VIEW_SWAP_F

- P -
PLA_PMVECTOR_CREATE_F
PLA_PMVECTOR_CREATE_CONF_TO_F
PLA_PVECTOR_CREATE_F
PLA_PVECTOR_CREATE_CONF_TO_F

- Q -

- R -
PLA_REDUCE_F
PLA_REDUCE_X_F

- S -
PLA_SCAL_F
PLA_SCAL_X_F
PLA_SWAP_F
PLA_SYMM_F
PLA_SYMV_F
PLA_SYR_F
PLA_SYR2_F
PLA_SYR2K_F
PLA_SYRK_F
PLA_SYRK_PERFORM_LOCAL_PART_F

- T -
PLA_TEMP_COMM_ALL_F
PLA_TEMP_COMM_ALL_INFO_F
PLA_TEMP_COMM_ALL_RANK_F
PLA_TEMP_COMM_ALL_SIZE_F
PLA_TEMP_COMM_COL_F
PLA_TEMP_COMM_COL_INFO_F
PLA_TEMP_COMM_COL_RANK_F
PLA_TEMP_COMM_COL_SIZE_F
PLA_TEMP_COMM_ROW_F
PLA_TEMP_COMM_ROW_INFO_F
PLA_TEMP_COMM_ROW_RANK_F
PLA_TEMP_COMM_ROW_SIZE_F
PLA_TEMP_CREATE_F
PLA_TEMP_FREE_F
PLA_TEMP_GET_COMM_DIR_F
PLA_TEMP_NB_F
PLA_TEMP_SET_COMM_DIR_F
PLA_TEMP_ZERO_OR_ONE_F
PLA_TRMM_F
PLA_TRMV_F
PLA_TRSM_F
PLA_TRSV_F

- V -
PLA_VECTOR_CREATE_F
PLA_VECTOR_CREATE_CONF_TO_F


Send mail to
plapack@cs.utexas.edu

Last Updated: Oct. 16, 1998