The great renaming:- CHKERRQ() -> PetscCall()- CHKERRV() -> PetscCallVoid()- CHKERRMPI() -> PetscCallMPI()- CHKERRABORT() -> PetscCallAbort()- CHKERRCONTINUE() -> PetscCallContinue()- CHKERRXX
The great renaming:- CHKERRQ() -> PetscCall()- CHKERRV() -> PetscCallVoid()- CHKERRMPI() -> PetscCallMPI()- CHKERRABORT() -> PetscCallAbort()- CHKERRCONTINUE() -> PetscCallContinue()- CHKERRXX() -> PetscCallThrow()- CHKERRCXX() -> PetscCallCXX()- CHKERRCUDA() -> PetscCallCUDA()- CHKERRCUBLAS() -> PetscCallCUBLAS()- CHKERRCUSPARSE() -> PetscCallCUSPARSE()- CHKERRCUSOLVER() -> PetscCallCUSOLVER()- CHKERRCUFFT() -> PetscCallCUFFT()- CHKERRCURAND() -> PetscCallCURAND()- CHKERRHIP() -> PetscCallHIP()- CHKERRHIPBLAS() -> PetscCallHIPBLAS()- CHKERRHIPSOLVER() -> PetscCallHIPSOLVER()- CHKERRQ_CEED() -> PetscCallCEED()- CHKERR_FORTRAN_VOID_FUNCTION() -> PetscCallFortranVoidFunction()- CHKERRMKL() -> PetscCallMKL()- CHKERRMMG() -> PetscCallMMG()- CHKERRMMG_NONSTANDARD() -> PetscCallMMG_NONSTANDARD()- CHKERRCGNS() -> PetscCallCGNS()- CHKERRPTSCOTCH() -> PetscCallPTSCOTCH()- CHKERRSTR() -> PetscCallSTR()- CHKERRTC() -> PetscCallTC()
show more ...
PetscInitialize() and PetscFinalize() wrapped:- ierr = PetscInitialize();if (ierr) return ierr;+ CHKERRQ(PetscInitialize());- ierr = PetscFinalize();- return ierr;+ CHKERRQ(PetscFinalize());+
PetscInitialize() and PetscFinalize() wrapped:- ierr = PetscInitialize();if (ierr) return ierr;+ CHKERRQ(PetscInitialize());- ierr = PetscFinalize();- return ierr;+ CHKERRQ(PetscFinalize());+ return 0;
pluck ~1000 low hanging PetscCheckFalse() -> PetscCheck() fruit
chkerr and friends wrapped
Enforce PetscCheck() and PetscAssert() usage via checkbadSource
Cook up trivial demo of use of MatSetPreallocationCOO() with finite elementsClarify MatSetPreallocationCOO() usage in manual pageKokkos part of example provided by Jed BrownCommit-type: docs, e
Cook up trivial demo of use of MatSetPreallocationCOO() with finite elementsClarify MatSetPreallocationCOO() usage in manual pageKokkos part of example provided by Jed BrownCommit-type: docs, example/spend 3hReported-by: Fande Kong <fdkong.jd@gmail.com>Thanks-to: Jed Brown <jed@jedbrown.org>Thanks-to: Junchao Zhang <jczhang@mcs.anl.gov>
rename PetscAssert() -> PetscCheck() and PetscAssertDebug() -> PetscAssert()
add PetscAssert() and PetscAssertFalse()
make PetscInfo() variadic
add checks for MAT_IGNORE_OFF_PROC_ENTRIES
Fix minor typos in comments for mat tutorial ex5k.
remove trailing newline from SETERRQ
applied attribute format to mat tests and tutorials
cleanup GPIU assembly tests
- Replace the current CUPM initialization infrastructure with PetscDevice.- Remove -petsc_use_default_null_stream and -[cuda|hip]_synchronize options- Remove PetscCUDASynchronize and PetscHIPSynchr
- Replace the current CUPM initialization infrastructure with PetscDevice.- Remove -petsc_use_default_null_stream and -[cuda|hip]_synchronize options- Remove PetscCUDASynchronize and PetscHIPSynchronize- Remove PetscCUDAInitialize(), PetscCUDAInitializeCheck(), PetscHIPInitialize(), andPetscHIPInitializeCheck()- Remove PetscCUBLASInitializeHandle(), PetscCUSOLVERDnInitializeHandle(),PetscHIPBLASInitializeHandle(), and PetscHIPSOLVERInitializeHandle().- Remove petsc_gputimer_begin and petsc_gputimer_begin- Add -device_enable, -device_select and -device_view options- Replace -[cuda|hip]_device with split options -device_enable_[cuda|hip] and -device_select_[cuda|hip]- Replace -[cuda|hip]_view with -device_view_[cuda|hip]- Add PetscDeviceInitType- Add PetscDeviceInitialize() and PetscDeviceInitialized()- Add PetscDeviceView()
Sys: reuse PetscInitialize code between C and Fortran
Style: replace "!rank" with "rank == 0"In SF tutorial ex1 (src/vec/is/sf/tutorials/ex1.c), add parentheses around "rank == 0". This is relevant because ! binds more tightly than +, but == binds les
Style: replace "!rank" with "rank == 0"In SF tutorial ex1 (src/vec/is/sf/tutorials/ex1.c), add parentheses around "rank == 0". This is relevant because ! binds more tightly than +, but == binds lesstightly, so the result of the computation would otherwise change.
requires: define -> requires: defined
Added PetscDevice to manage interaction and configuration of available devices.Added PetscDeviceContext class to manage stream interactions for CUDA and HIP devicebackends. The new class is design
Added PetscDevice to manage interaction and configuration of available devices.Added PetscDeviceContext class to manage stream interactions for CUDA and HIP devicebackends. The new class is designed to facilitate a fork-join parallelization model forasynchronous compute.
Some missing CHKERR[Q|MPI]
PetscStack : check for correct push/popEnforce checkstack for CI jobsFixes from testsuite
Optimizations for mass term in Landau
MatSetValuesDevice: Cleanup and simplify code, including exampleUser reported crash of example code. Kernel was passed an ierr that lived in CPU memoryMatSetValuesDevice: do not include private h
MatSetValuesDevice: Cleanup and simplify code, including exampleUser reported crash of example code. Kernel was passed an ierr that lived in CPU memoryMatSetValuesDevice: do not include private headers from public headersFeature: MatSetValuesDevice determines automatically from the context (where it is included from) if it is being used from C, CUDA, or Kokkos, PETSC_DEVICE_FUNC_DEC no longer needs to be set before including petscaijdevice.hFeature: MatSetValuesDevice() now ignores all values outside the global column range.PetscSplitCSRDataStructure is now a pointer, not a struct, like most PETSc objects, please leave it that way.Fix all uses of CTABLE that were related to the original MatSetValuesDevice()Have atomicAdd use Kokkos atomic-add with CPU build when building with Kokkos.Cuda should now work with --download-openmpi, this is done by updating updateCompilers() to rerun portions of packages/cuda.py after the compilers are reset to use MPI wrappers. This is needed because the resetting of the compilers removes all the compiler flags and packages/cuda.py sets certain values into these flags that was previously lost.Add MPICXX_INCLUDES, MPICXX_LIBS to fix compile targets for Kokkos examples'make check' now runs properly for Kokkos test of src/snes/ex3k, fixed bug in the makefile wrt MPI_IS_MPIUNI checkTesting makefile rules: add ex*cu binaries to clean ruleReported-by: Sam Fagbemi <samkorede24@gmail.com>Thanks-to: Stefano Zampini <stefano.zampini@gmail.com>Thanks-to: Mark Adams <mfadams@lbl.gov>/spend 16h
Remove all double blank lines from sourceCommit-type: petsc-style/2h
CHKERRQ() -> CHKERRMPI()
12345