The GPU performance state APIs are used to get and set various performance levels on a per-GPU basis. P-States are GPU active/executing performance capability and power consumption states.
P-States range from P0 to P15, with P0 being the highest performance/power state, and P15 being the lowest performance/power state. Each P-State maps to a performance level. Not all P-States are available on a given system. The definition of each P-States are currently as follows:
- P0/P1 – Maximum 3D performance
- P2/P3 – Balanced 3D performance-power
- P8 – Basic HD video playback
- P10 – DVD playback
- P12 – Minimum idle power consumption
To see the current state and memory available I use the command:
nvidia-smi
It can be very useful to see the maximum batch size to use without getting a CUDA out of memory error.