Changes: Development#
General:
Configure/Build:
Make
SYCLadevicePackage, i.e., builds--with-syclnow havePETSC_HAVE_DEVICEdefinedAdd the option
--with-devicelanguageto compilePetscDevicecode using either a C or C++ compiler
Sys:
Add
PetscCallHYPRE()to check HYPRE error codes and print error messages on failure
Event Logging:
Add two approaches for GPU energy monitoring:
-log_view_gpu_energyand-log_view_gpu_energy_meterAdd API
PetscLogGpuEnergy(),PetscLogGpuEnergyMeter(),PetscLogGpuEnergyMeterBegin()andPetscLogGpuEnergyMeterEnd()for GPU energy monitoring
PetscViewer:
Change the final argument of
PetscViewerGLVisSetFields()toPetscCtxDestroyFn *. This means the destroy function must dereference the argument before operating on it
PetscDraw:
AO:
IS:
VecScatter / PetscSF:
PF:
Vec:
PetscSection:
PetscPartitioner:
Mat:
Change the
destroy()function argument ofMatShellSetMatProductOperation()to typePetscCtxDestroyFn *. This means the destroy function must dereference the argument before operating on it
MatCoarsen:
PC:
Add multi-precision support for MUMPS. One could use
-pc_precision <single, double>to set the precision to be used by MUMPS, which can be different fromPetscScalar’s precision
KSP:
Remove
KSPHPDDMPrecisionin favor ofPetscPrecision
SNES:
Change the
destroy()function argument ofSNESSetConvergenceTest()to typePetscCtxDestroyFn *. This means the destroy function must dereference the argument before operating on it
SNESLineSearch:
TS:
Change the
destroy()function argument ofTSTrajectorySetTransform()to typePetscCtxDestroyFn *. This means the destroy function must dereference the argument before operating on it
TAO:
PetscRegressor:
DM/DA:
Change the final argument of
DMShellSetDestroyContext()toPetscCtxDestroyFn *. This means the destroy function must dereference the argument before operating on it
DMSwarm:
DMPlex:
FE/FV:
DMNetwork:
DMStag:
DT:
Fortran: