MatShift_MPI/SeqXAIJ() could hang if some processes had no entries on a process while others had entriesbecause some processes would attempt a parallel preallocation and the others would not.Fixed
MatShift_MPI/SeqXAIJ() could hang if some processes had no entries on a process while others had entriesbecause some processes would attempt a parallel preallocation and the others would not.Fixed by first checking if no preallocation was done, and if not doing. Otherwise preallocation is only doneif approprate by each process on the diagonal block portion of the matrix, thus not requiring all processesthat share the matrix to call the parallel preallocation routineReported-by: Patrick Lacasse <patrick.m.lacasse@gmail.com>
show more ...
Replaced PetscViewerASCIISynchronizedAllow() with PetscViewerASCIIPushSynchronized() PetscViewerASCIIPopSynchronized()
merged PetscViewerGetSingleton() and PetscViewerGetSubcomm() into PetscViewerGetSubViewer()Does not currently work, needs fixes to work correctly recursively
bugs in example that should never have gotten into nextbug in code calling VecGetArray() on read only vector
Merge branch 'maint'
Fix nonzerostate tracking in all MATMPI types.
updated PETSc directory layout to match standard packaging strategiesinclude/petsc finclude,private,mpiunilib/petsc confbin/petsc*
Merge branch 'tisaac/mat-get-submatrix-unordered'
Merge branch 'barry/fix-matload-uneven-rows'Conflicts: src/mat/examples/tests/makefile
MatLoad_MPIXAIJ() did not work correctly with user provided decomposition of the matrix rowsalso added test example for this case
Optimized MatShift() for a completely empty matrix since this is commonly used with SLEPc to produce diagonal matricesReported-by: Jose Roman <jroman@dsic.upv.es>
MatSetValuesMPISBAIJ will now print correct global indices when errorgenerated due to new nonzero location
clarify in error messages for MPI Mat block set values that the printed indices are block based, not point based
When generating error new nonzero location in MatSetValues_MPIxxx() calls print the global row/column number of the offending locationPreviously this printed the number inside the local sequential p
When generating error new nonzero location in MatSetValues_MPIxxx() calls print the global row/column number of the offending locationPreviously this printed the number inside the local sequential portion of the matrix which is confusing for usersNote that this cannot be done trivially for MatSetValuesBlocked_MPIxxx() because the insertion in the submatrix is in a seperate function that does not know about the calling function
Added ISSorted() test to MatGetSubmatrices_MPISBAIJ()These matrices can't be constructed by just post-sorting rows: we wouldhave to move entries between rows. Hence, we keep the sortedrequiremen
Added ISSorted() test to MatGetSubmatrices_MPISBAIJ()These matrices can't be constructed by just post-sorting rows: we wouldhave to move entries between rows. Hence, we keep the sortedrequirement for sbaij.
MatLoad_ and VecLoad_ routines that use options database information from the binary file .info files need to PetscViewerSetUp() before accessing the options database because the "lazy" setup of bina
MatLoad_ and VecLoad_ routines that use options database information from the binary file .info files need to PetscViewerSetUp() before accessing the options database because the "lazy" setup of binary viewers defered the opening of the files until binary reading was first done which was after the calls to determine matrix and vector block sizes.
MatAssembly: move check for InsertMode consistency into MatStashScatter implsThe BTS implementation now encodes InsertMode in-band to avoid anotherset of messages for MAT_SUBSET_OFF_PROC_ENTRIES.
MatAssembly: move check for InsertMode consistency into MatStashScatter implsThe BTS implementation now encodes InsertMode in-band to avoid anotherset of messages for MAT_SUBSET_OFF_PROC_ENTRIES. It does the reductionin debug mode for better error reporting.
PetscViewerBinaryGetDescriptor() is now a collective and must be treated as suchfixed some calls to PetscViewerBinarySetUseMPIIO()removed some test runs that take too long
Merge branch 'maint'Conflicts: src/mat/impls/baij/seq/baij.h src/mat/impls/sbaij/mpi/mpisbaij.c src/mat/impls/sbaij/seq/sbaij.h
bugfix of ISEqual_private()
sbaij: move extern prototypes out of mpisbaij.c [and declare them in the corresponding sbaij.h/mpisbaij.h includes]
cleanup MatGetSubMatrix_MPISBAIJ() by factoring ISEqual_private() out
add new MatGetSubMatrix_MPISBAIJ (see issue #7)
Merge branch 'barry/feature-vec-lock'
Merge branch 'hzhang/elemental-matconvert'Conflicts: src/mat/examples/tests/makefile
1...<<11121314151617181920>>...37