Revert "replace 'const MatFactorInfo' to 'MatFactorInfo' in MatFactor routi"This reverts commit 927faaad4e7a9177b263c19fc2f4e1f9dae8f67a.
Revert "replace 'const MatFactorInfo' -> 'MatFactorInfo'"This reverts commit af48bdc5724c729ddc55b84e8afd48f344de3945.
add "Mat fact" as an input to MatPivotCheck() for setting errortype into matrix fact
replace 'const MatFactorInfo' -> 'MatFactorInfo'
added many checks for integer overflow in symbolic factorization and symbolic matrix matrix multiplication
replace 'const MatFactorInfo' to 'MatFactorInfo' in MatFactor routines
Merge branch 'master' into barry/petscoptions-object
Merge remote-tracking branch 'origin/hzhang/matmatmult_dense'
Complete update to new PetscOptions interface
add MAT_INPLACE_MATRIX; replace MAT_REUSE_MATRIX with it for MatConvert()
Merge branch 'barry/add-mpiu_allreduce'
Merge branch 'barry/fix-ts-matshift-error'
Introduce MPIU_Allreduce() to detect cases where all processes that share an MPI comm do not call the same sequence of MPI_Allreduce()This is a bug that can be difficult to track down.Suggested-by
Introduce MPIU_Allreduce() to detect cases where all processes that share an MPI comm do not call the same sequence of MPI_Allreduce()This is a bug that can be difficult to track down.Suggested-by: Eric Chamberland <Eric.Chamberland@giref.ulaval.ca>Suggested-by: Patrick Lacasse <placasse@giref.ulaval.ca>
show more ...
Merge branch 'maint'
If only some processes had no local entries in the matrix the MatSeqXAIJPreallocation() changed the value of aij->nonew on only thoseprocesses thus resulting in gridlock in MatAssemblyEnd_MPIXAIJ()
If only some processes had no local entries in the matrix the MatSeqXAIJPreallocation() changed the value of aij->nonew on only thoseprocesses thus resulting in gridlock in MatAssemblyEnd_MPIXAIJ() since some processes wanted to update the matrix nonzero state while others did notReported-by: Eric Chamberland <Eric.Chamberland@giref.ulaval.ca>
fix violations of PETSc style guide: Usage of SETERRQ and NULL
Added missing MatMissingDiagonal() implementations
MatHeaderReplace() corrupted the -objects_dump arrayReported-by: Torquil Macdonald Sørensen <torquil@gmail.com>MatHeaderReplace() and MatHeaderMerge() destroy the second matrix argument therefor
MatHeaderReplace() corrupted the -objects_dump arrayReported-by: Torquil Macdonald Sørensen <torquil@gmail.com>MatHeaderReplace() and MatHeaderMerge() destroy the second matrix argument therefor pass it asa pointer to it can be zeroed and not mistakenly reused.
Merge branch 'jed/mat-assembly-perf' of bitbucket:petsc/petscVecAssembly and MatAssembly now use a scalable exchange pattern based onPetscCommBuildTwoSided. This feature can be controlled with th
Merge branch 'jed/mat-assembly-perf' of bitbucket:petsc/petscVecAssembly and MatAssembly now use a scalable exchange pattern based onPetscCommBuildTwoSided. This feature can be controlled with the options -vec_assembly_bts 0 or 1 (default 0) -matstash_bts 0 or 1 (default 0)The rationale is that the new implementation with scalable datastructures can be slightly slower than the old version at small processcounts. The default here could be changed to depend on the processcount (leading to possibly-confusing scaling performance diagnostics) orthe implementation could learn to take a fast path.* 'jed/mat-assembly-perf' of bitbucket:petsc/petsc: (49 commits) MatStash: fix -Wsign-compare by using size_t for loop index when max is also size_t Sys BuildTwoSided test: fix for non-POD std::complex MatStash: cast to satisfy non-structural MPI type tag check mpiuni: fix compile error /sandbox/petsc/petsc.clone-2/arch-linux-uni/lib/libpetsc.so: undefined reference to `MPI_Type_create_resized' Vec: Silence compiler warning Vec: fix typo in comment Sys: fix C89 compiler warning VecStash BTS: fix block stash InsertMode accounting VecStash BTS: fix indexing bug counting sends to rank 0 MatStash BTS: fix memory leak on MAT_SUBSET_OFF_PROC_ENTRIES VecAssemblyEnd_MPI_BTS: fix donotstash code path VecAssemblyEnd_MPI_BTS: fix C++ conversion to InsertMode Sys: fix datatypes test using MPI_Type_create_resized MatStash BTS: work around lack of offsetof() for non-POD (std::complex) MatAssembly: move check for InsertMode consistency into MatStashScatter impls MatStash BTS: fix memory leak on reassembly with MAT_SUBSET_OFF_PROC_ENTRIES MatStash BTS: small simplification to row ownership calculation MatStash BTS: add MAT_SUBSET_OFF_PROC_ENTRIES, impl with neighbor-only comm MatStash: initial BTS (BuildTwoSided) implementation MatStash: add extension point for new BTS implementation ...
Merge branch 'master' into barry/fix-petscviewer-attempt-2
Merge branch 'barry/add-concurrencykit'
Merge branch 'barry/fix-nonew-notcollective/maint' into jed/mat-assembly-perfJed this fucking 6+ month running thing in next that is not in master is a royal fucking pain in the ass andan abuse of
Merge branch 'barry/fix-nonew-notcollective/maint' into jed/mat-assembly-perfJed this fucking 6+ month running thing in next that is not in master is a royal fucking pain in the ass andan abuse of git. I think it is not justified to ever have anything in next for more than a few weeks at most.Either take it out of next if it is broken or put it in master if it is not broken. Hanging around in next butnot master for ever is not a good policy.
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>
Replaced PetscViewerASCIISynchronizedAllow() with PetscViewerASCIIPushSynchronized() PetscViewerASCIIPopSynchronized()
Merge branch 'barry/add-concurrencykit' into barry/fix-petscviewer-attempt-2
1...<<11121314151617181920>>...69