NVIDIA GSP is set to offload tasks traditionally performed by CPUs
With the latest driver, NVIDIA is enabling a new feature within the GPU called GPU System Processor (GSP).
Starting with 510.39 drivers, NVIDIA is enabling GSP to select Tesla/Data Center GPUs, primarily based on Ampere and Turing architectures. The GSP will offload tasks that were traditionally performed by CPUs, such as GPU initialization and management tasks.
Users can still force-disable GSP, but this means that some display related features or power management related features will not work properly. However, those features are yet to be added to GSP tasks.
Some GPUs include a GPU System Processor (GSP) which can be used to offload GPU initialization and management tasks. This processor is driven by the firmware file /lib/firmware/nvidia/510.39.01/gsp.bin. A few select products currently use GSP by default, and more products will take advantage of GSP in future driver releases.
Offloading tasks which were traditionally performed by the driver on the CPU can improve performance due to lower latency access to GPU hardware internals.
— NVIDIA
There is no indication that GSP might be enabled for consumers products, however, any tasks that can be offloaded from the CPU is probably a good way to go.
One would guess that GSP is based on the RISC-V Falcon microcontroller which was introduced by NVIDIA back in 2016. Assuming that this controller is being used by current-gen NVIDIA GPUS.
NVIDIA Products using GPU System Processor | |
---|---|
NVIDIA GPU product | Device PCI ID * |
Tesla T10 | 1E37 10DE 1370 |
NVIDIA T4G | 1EB4 10DE 157D |
Tesla T4 | 1EB8 |
NVIDIA T4 32GB | 1EB9 |
NVIDIA A100-PG509-200 | 20B0 10DE 1450 |
NVIDIA A100-SXM4-40GB | 20B0 |
NVIDIA A100-PCIE-40GB | 20B1 10DE 145F |
NVIDIA A100-SXM4-80GB | 20B2 10DE 1463 |
NVIDIA A100-SXM4-80GB | 20B2 10DE 147F |
NVIDIA A100-SXM4-80GB | 20B2 10DE 1484 |
NVIDIA PG506-242 | 20B3 10DE 14A7 |
NVIDIA PG506-243 | 20B3 10DE 14A8 |
NVIDIA A100-PCIE-80GB | 20B5 10DE 1533 |
NVIDIA PG506-230 | 20B6 10DE 1491 |
NVIDIA PG506-232 | 20B6 10DE 1492 |
NVIDIA A30 | 20B7 10DE 1532 |
NVIDIA A100-PG506-207 | 20F0 10DE 1583 |
NVIDIA A100-PCIE-40GB | 20F1 10DE 145F |
NVIDIA A100-PG506-217 | 20F2 10DE 1584 |
NVIDIA A40 | 2235 10DE 145A |
NVIDIA A16 | 25B6 10DE 14A9 |
NVIDIA A2 | 25B6 10DE 157E |
* If three IDs are listed, the first is the PCI Device ID, the second is the PCI Subsystem Vendor ID, and the third is the PCI Subsystem Device ID.
Source: NVIDIA