1 votes

Le serveur GPU se fige pendant l'inactivité du GPU

Nous avons un nouveau serveur Supermicro AS-4124GS-TNR équipé de huit NVIDIA RTX A6000. Le système d'exploitation est Ubuntu 20.04.2, la version du pilote NVIDIA est 460.73.01 (aucun pilote Nouveau utilisé), la version de CUDA est 11.2.

Nous avons effectué quelques tests de longue durée sur les GPU et le système était stable. Cependant, après une période d'inactivité des GPU, le système a cessé de fonctionner de manière répétée.

Nous supposons que GpuPowerMizerMode doit être réglé sur 1 pour éviter les plantages pendant l'inactivité des GPU (une supposition étayée par d'autres rapports d'utilisateurs trouvés sur Internet).

La seule façon de faire cela que nous connaissons est de démarrer X (par exemple en démarrant gdm) puis de régler la valeur en conséquence via nvidia-settings (lancer nvidia-settings sans X/gdm entraîne "Impossible d'initialiser le serveur : Connexion refusée."). Mais lorsque X/gdm est arrêté, la valeur de GpuPowerMizerMode est automatiquement réinitialisée à 2. Malheureusement, laisser X/gdm fonctionner en permanence n'est pas une option car cela entraîne également une instabilité du système.

Ainsi, notre problème semble être le suivant :

  1. L'inactivité des GPU + GpuPowerMizerMode différent de 1 peut entraîner un gel du système. GpuPowerMizerMode ne peut être défini que via nvidia-settings connecté à un X/dm en cours d'exécution (?). Pour définir de manière persistante la valeur sur 1, X/dm(?) doit rester en cours d'exécution.
  2. Un X/gdm en cours d'exécution peut provoquer un plantage du système.

Nos suppositions sont-elles exactes ? / D'autres rencontrent-ils également ces problèmes spécifiques ?

Comment pouvons-nous résoudre le problème du gel pendant l'inactivité des GPU ?

1voto

Michael Hampton Points 232226

Il ne devrait pas être nécessaire de démarrer une session GUI (ou même d'en avoir une installée!) pour changer des paramètres comme celui-ci; nvidia-settings devrait bien fonctionner depuis la console framebuffer ou même dans un script que vous écrivez et qui s'exécute au démarrage.

Vérifiez pour être sûr :

# nvidia-settings -q GpuPowerMizerMode

  Attribute 'GPUPowerMizerMode' (blacktemple:1[gpu:0]): 1.
    Les valeurs valides pour 'GPUPowerMizerMode' sont : 0, 1 et 2.
    'GPUPowerMizerMode' peut utiliser les types de cibles suivants : GPU.

Pour huit GPU, écrivez simplement un script, quelque chose comme :

for n in $(seq 0 7); do
    nvidia-settings -a "[gpu:$n]/GpuPowerMizerMode=1"
done

et exécutez-le au démarrage de la manière qui vous convient.


Je ne peux pas dire si vos plantages sont dus au fait que vous exécutez avec GpuPowerMizerMode!=1. Si c'est le cas, alors vous avez probablement un matériel défectueux que vous devriez identifier et remplacer.

0 votes

Lancer nvidia-settings sans exécuter et utiliser X/gdm conduit à 'Impossible d'initialiser le serveur : Impossible de se connecter : Connexion refusée.'

0 votes

@user776206 Hm, c'est inattendu. Je vais jouer avec un peu plus tard.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X