typedef enum {PETSC_OFFLOAD_UNALLOCATED,PETSC_OFFLOAD_GPU,PETSC_OFFLOAD_CPU,PETSC_OFFLOAD_BOTH} PetscOffloadFlag;PETSC_OFFLOAD_UNALLOCATED - no memory contains valid matrix entries; NEVER used for vectors PETSC_OFFLOAD_GPU - GPU has valid vector/matrix entries PETSC_OFFLOAD_CPU - CPU has valid vector/matrix entries PETSC_OFFLOAD_BOTH - Both GPU and CPU have valid vector/matrix entries and they match