PETSc version 3.16.5
Fix/Edit manual page

# PetscDeviceKind

Kind of accelerator device backend

### Synopsis

    typedef enum {
      PETSC_DEVICE_INVALID = 0,
      PETSC_DEVICE_CUDA    = 1,
      PETSC_DEVICE_HIP     = 2,
      PETSC_DEVICE_MAX     = 3
    } PetscDeviceKind;

    PETSC_DEVICE_INVALID - Invalid type, do not use

    PETSC_DEVICE_CUDA    - CUDA enabled GPU

    PETSC_DEVICE_HIP     - ROCM/HIP enabled GPU

    PETSC_DEVICE_DEFAULT - Automatically select backend based on availability

    PETSC_DEVICE_MAX     - Always 1 greater than the largest valid PetscDeviceKInd, invalid type, do not use

### Notes

PETSC_DEVICE_DEFAULT is selected in the following order: PETSC_DEVICE_HIP, PETSC_DEVICE_CUDA, PETSC_DEVICE_INVALID.

### See Also

PetscDevice, PetscDeviceCreate()

### Level

beginner

### Location

include/petscdevicetypes.h
Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages