--- title: Nvidia Device Plugin Setup --- ## Talos Linux Setup ## Enable NVIDIA kernel modules Before installing the device plugin, some initial steps need to be taken per [Talos Documentation][1]. Please make sure you have installed the correct system extensions through a combination of patches + the correct [factory image][2] for your use case. example gpu-worker-patch.yaml ```yaml machine: kernel: modules: - name: nvidia - name: nvidia_uvm - name: nvidia_drm - name: nvidia_modeset sysctls: net.core.bpf_jit_harden: 1 ``` ### Quick Sanity Check If running these commands does not produce similar output, you haven't set up base system completely: ``` ❯ talosctl read /proc/modules nvidia_uvm 1482752 - - Live 0xffffffffc3b4e000 (PO) nvidia_drm 73728 - - Live 0xffffffffc3b3b000 (PO) nvidia_modeset 1290240 - - Live 0xffffffffc39dc000 (PO) nvidia 56602624 - - Live 0xffffffffc03e0000 (PO) ❯ talosctl get extensions NODE NAMESPACE TYPE ID VERSION NAME VERSION 192.168.2.104 runtime ExtensionStatus 0 1 nonfree-kmod-nvidia 535.129.03-v1.6.7 192.168.2.104 runtime ExtensionStatus 2 1 nvidia-container-toolkit 535.129.03-v1.13.5 192.168.2.104 runtime ExtensionStatus 4 1 schematic a22f54cdf137d9d058e9a399adecf4bab2f3cc74b15b5bee00005811433e06b0 192.168.2.104 runtime ExtensionStatus modules.dep 1 modules.dep 6.1.82-talos ``` ## Create NVIDIA runtime class: You will need to add this runtime class to pods you wish to add GPU resources to. ``` ❯ cat <