petsc-3.11.4 2019-09-28
MatCreateMPIAIJCRL
Creates a sparse matrix of type MPIAIJCRL. This type inherits from AIJ, but stores some additional information that is used to allow better vectorization of the matrix-vector product. At the cost of increased storage, the AIJ formatted matrix can be copied to a format in which pieces of the matrix are stored in ELLPACK format, allowing the vectorized matrix multiply routine to use stride-1 memory accesses. As with the AIJ type, it is important to preallocate matrix storage in order to get good assembly performance.
Synopsis
PetscErrorCode MatCreateMPIAIJCRL(MPI_Comm comm,PetscInt m,PetscInt n,PetscInt nz,const PetscInt nnz[],PetscInt onz,const PetscInt onnz[],Mat *A)
Collective on MPI_Comm
Input Parameters
| comm | - MPI communicator, set to PETSC_COMM_SELF
|
| m | - number of rows
|
| n | - number of columns
|
| nz | - number of nonzeros per row (same for all rows)
|
| nnz | - array containing the number of nonzeros in the various rows
(possibly different for each row) or NULL
|
Output Parameter
A -the matrix
Notes
If nnz is given then nz is ignored
Keywords
matrix, cray, sparse, parallel
See Also
MatCreate(), MatCreateMPIAIJPERM(), MatSetValues()
Level
intermediate
Location
src/mat/impls/aij/mpi/crl/mcrl.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages