« GPU Passthrough » : différence entre les versions

De Le Wiki de Lug
Aller à la navigation Aller à la recherche
(Page créée avec « = NVidia = == LXC == [https://matthieu.yiptong.ca/2020/12/06/nvidia-gpu-passthrough-to-lxc-containers-on-proxmox-6-for-nvenc-in-plex/ Source] [https://theorangeone.net/pos… »)
 
Aucun résumé des modifications
Ligne 1 : Ligne 1 :
= NVidia =
= NVidia =
== LXC ==
[https://matthieu.yiptong.ca/2020/12/06/nvidia-gpu-passthrough-to-lxc-containers-on-proxmox-6-for-nvenc-in-plex/ Source] [https://theorangeone.net/posts/lxc-nvidia-gpu-passthrough/ Autre source] [https://medium.com/@MARatsimbazafy/journey-to-deep-learning-nvidia-gpu-passthrough-to-lxc-container-97d0bc474957 Encore une autre]
[https://matthieu.yiptong.ca/2020/12/06/nvidia-gpu-passthrough-to-lxc-containers-on-proxmox-6-for-nvenc-in-plex/ Source] [https://theorangeone.net/posts/lxc-nvidia-gpu-passthrough/ Autre source] [https://medium.com/@MARatsimbazafy/journey-to-deep-learning-nvidia-gpu-passthrough-to-lxc-container-97d0bc474957 Encore une autre]
{{Méta bandeau
  | niveau = grave
  | icône = important
  | texte  = le pilote installé doit être identique sur l'hôte ProxMox et le conteneur LXC
}}
Sur le serveur ProxMox l'on peut installé DKMS pour ne pas perdre le module du pilote lorsque le kernel est mise à jour :
# apt update && apt upgrade
# apt install dkms
Se rendre sur [https://github.com/keylase/nvidia-patch ce site] et choisir un pilote compatible avec le patch pour supprimé la limite de sessions, télécharger l'ensemble sur le serveur et les containeurs :
{{Méta bandeau
  | niveau = information
  | icône = loupe
  | texte  = Astuce : Il est possible d'utiliser un '''[[Bindmount|montage interne]]''' pour partager les fichiers :
}}
Si nécessaire on install git :
# apt install git
Puis on récupère les fichiers :
# mkdir /opt/nvidia
# cd /opt/nvidia/
# wget <nowiki>https://</nowiki>international.download.nvidia.com/XFree86/Linux-x86_64/<font color = green>470.74</font>/NVIDIA-Linux-x86_64-<font color = green>470.74</font>.run
# git clone <nowiki>https://</nowiki>github.com/keylase/nvidia-patch
Ensuite on commence par configurer ProxMox :
==ProxMox==
* On installe les prérequis si nécessaire :
# apt install pve-headers
* On installe le pilote :
# bash /opt/nvidia/NVIDIA-Linux-x86_64-<font color = green>470.74</font>.run
----
Si nécessaire on demande à l'installateur de remplacer le pilote "nouveau" au démarrage :
On le décharge :
# rmmod nouveau
On relance l'installation :
# bash /opt/nvidia/NVIDIA-Linux-x86_64-<font color = green>470.74</font>.run
----
* On accepte d'enregistrer le module dans DKMS pour éviter de devoir le réinstaller lors de la mise à jour du kernel :
On conserve le choix par défaut pour les autres options demandées..
*On applique le patch pour supprimer la limite de sessions :
# bash /opt/nvidia/nvidia-patch/patch.sh
On peut également appliquer le patch pour autoriser "NvFBC" :
# bash /opt/nvidia/nvidia-patch/patch-fbc.sh
* On force le chargement de modules au démarrage :
# vi /etc/modules-load.d/modules.conf
<font color = grey>...</font>
# Nvidia modules
nvidia
nvidia_uvm
# update-initramfs -u -k all
* On force la création de fichiers qui en utilisation normale ne sont créés qu'a la demande :
# vi /etc/udev/rules.d/70-nvidia.rules
KERNEL=="nvidia", RUN+="/bin/bash -c '/usr/bin/nvidia-smi -L && /bin/chmod 666 /dev/nvidia*'"
KERNEL=="nvidia_uvm", RUN+="/bin/bash -c '/usr/bin/nvidia-modprobe -c0 -u && /bin/chmod 0666 /dev/nvidia-uvm*'"
* On redémarre le serveur, on peut vérifier ensuite l'installation avec la commande "nvidia-smi"
# nvidia-smi

Version du 23 octobre 2021 à 13:47

NVidia

Source Autre source Encore une autre

Sur le serveur ProxMox l'on peut installé DKMS pour ne pas perdre le module du pilote lorsque le kernel est mise à jour :

# apt update && apt upgrade
# apt install dkms

Se rendre sur ce site et choisir un pilote compatible avec le patch pour supprimé la limite de sessions, télécharger l'ensemble sur le serveur et les containeurs :

Si nécessaire on install git :

# apt install git

Puis on récupère les fichiers :

# mkdir /opt/nvidia
# cd /opt/nvidia/
# wget https://international.download.nvidia.com/XFree86/Linux-x86_64/470.74/NVIDIA-Linux-x86_64-470.74.run
# git clone https://github.com/keylase/nvidia-patch

Ensuite on commence par configurer ProxMox :

ProxMox

  • On installe les prérequis si nécessaire :
# apt install pve-headers
  • On installe le pilote :
# bash /opt/nvidia/NVIDIA-Linux-x86_64-470.74.run

Si nécessaire on demande à l'installateur de remplacer le pilote "nouveau" au démarrage :

On le décharge :

# rmmod nouveau

On relance l'installation :

# bash /opt/nvidia/NVIDIA-Linux-x86_64-470.74.run

  • On accepte d'enregistrer le module dans DKMS pour éviter de devoir le réinstaller lors de la mise à jour du kernel :


On conserve le choix par défaut pour les autres options demandées..


  • On applique le patch pour supprimer la limite de sessions :
# bash /opt/nvidia/nvidia-patch/patch.sh

On peut également appliquer le patch pour autoriser "NvFBC" :

# bash /opt/nvidia/nvidia-patch/patch-fbc.sh
  • On force le chargement de modules au démarrage :
# vi /etc/modules-load.d/modules.conf
...
# Nvidia modules
nvidia
nvidia_uvm
# update-initramfs -u -k all
  • On force la création de fichiers qui en utilisation normale ne sont créés qu'a la demande :
# vi /etc/udev/rules.d/70-nvidia.rules
KERNEL=="nvidia", RUN+="/bin/bash -c '/usr/bin/nvidia-smi -L && /bin/chmod 666 /dev/nvidia*'"
KERNEL=="nvidia_uvm", RUN+="/bin/bash -c '/usr/bin/nvidia-modprobe -c0 -u && /bin/chmod 0666 /dev/nvidia-uvm*'"
  • On redémarre le serveur, on peut vérifier ensuite l'installation avec la commande "nvidia-smi"
# nvidia-smi