Add custom fortran stub for MatCreateNest()Otherwise PETSC_NULL_IS_ARRAY cannot be used for is_row, is_col
Mat: Fix and improve the performance of dense matrix multiplicationMat: Add MATDENSEFROMVECTYPE constructor typeNow in a tests set you can do``` testset: args: -mat_type densefromvectype
Mat: Fix and improve the performance of dense matrix multiplicationMat: Add MATDENSEFROMVECTYPE constructor typeNow in a tests set you can do``` testset: args: -mat_type densefromvectype test: test_cuda requires: cuda args: -vec_type veccuda test: test_hip requires: hip args: -vec_type vechip```(This assumes that you call `MatSetVecType()` before you call`MatSetFromOptions()`)Mat_MPIDense: Cache offsets of MatDenseGetSubMatrix() to avoid communication in more casesMat: Add missing implementations for internal "MatMultColumnRange()" interfaceMat_MPIDense: Fix the zeroing of buffers in multiplication routinesMat_MPIDense: Add optimization of MatMatMult routines when all columns are owned by rank 0The communication for intermediate buffers can be handled with allreduce / bcast operations,but we use the PetscSF matvec context instead of MPI routines directly so that we willuse gpu-aware MPI if possible.
show more ...
Mat: need to access the mataij value array via accessors to maintain host/device sync stateReported-by: Steven Dargaville <dargaville.steven@gmail.com>
Fix wrong case for PETSc
MatProduct: fix unsafe cases for block size propagationAdd test from Pierre
Add Fortran support for MatGet/RestoreRowReported-by: Steven Dargaville
Merge branch 'stevendargaville/mat-kokkoscreatedevice' into 'main'Added new API calls to allow kokkos matrices to be built with no host preallocationSee merge request petsc/petsc!8206
Changes to allow building gpu matrices on the device.Changed MatCreateMPIAIJWithSeqAIJ() so global sizes must be given to prevent reduction.Changed MatCreateMPIAIJWithSeqAIJ() so B can be passed
Changes to allow building gpu matrices on the device.Changed MatCreateMPIAIJWithSeqAIJ() so global sizes must be given to prevent reduction.Changed MatCreateMPIAIJWithSeqAIJ() so B can be passed in with local indices, hence no compactification occurs.Added MatCreateSeqAIJKokkosWithKokkosViews() which creates a Mat with no preallocation on the host.Added test that checks building kokkos matrices without any host preallocation
Fortran 90: fully embrace After 34 years!- deprecate use of 'F90' in Fortran function names- use Fortran pointers when appropriate- the new Fortran API is not backward compatible with previous ve
Fortran 90: fully embrace After 34 years!- deprecate use of 'F90' in Fortran function names- use Fortran pointers when appropriate- the new Fortran API is not backward compatible with previous versions!- also clean up inconsistent PETSc code detected by new Fortran generation tools- drop use of bfort- automatically generate all the Fortran PETSc objects, enums etc from the include files- generate most of the Fortran interface definitions and functions from the source code- simplify the number and organization of Fortran modulesCo-authored-by: Jose E. Roman <jroman@dsic.upv.es>
Merge remote-tracking branch 'origin/release'
Fix bug in our FFTW interface that could produce completely incorrect results for any of the nontrivial FFTW plans.Reported-by: Satish Balay
make: add explicit '% : %.c' target so that LINK.c target is in sync with LINK.F target '% : %.F90'with multiple source compile into a singe binary:- fixes Fortran example build: currently broken,
make: add explicit '% : %.c' target so that LINK.c target is in sync with LINK.F target '% : %.F90'with multiple source compile into a singe binary:- fixes Fortran example build: currently broken, due to duplicate obj-files in link command- can now use consitent obj file dependencies irrespective of C-main or Fortran-main sources- cab avoid duplicate compiles of same sources [esp with SEPARATE_COMPILE_LINK=1]
Improve some manual pages in KSP/SNES
Add test showing issue with MatResetPreallocation_MPIAIJ
Add a MatResetHash API
Add MatCopyHashToXAIJ() to copy hash table entries into an XAIJ matrix type
brain dead fixes for useless casts in examples
CI: enable compilation of examples in some stage-1 jobs
Add check for misuse of TODO in gmakegentest.py specifications and fix misuse
Merge branch 'jolivet/enable-mat-ex108' into 'main'Mat: enable tests-ex108See merge request petsc/petsc!7864
CI: update checkclangformat to use clang-format-19.1.0
Remove unneeded parentheses
Update Htool
12345678910>>...24