Folosesc Ubuntu 20.04.3 LTS pe două mașini (calculatorul meu personal și un server mic de la serviciu), ambele echipate cu carduri Nvidia. Aparatul personal are un RTX2080 Super, în timp ce serverul rulează cu două RTX3090.
Facem cercetări de învățare profundă la locul de muncă, așa că folosesc mașinile mai ales pentru rularea TensorFlow sau instrumente conexe care folosesc GPU-ul.
Eu am fost cel care a configurat ambele mașini de la zero, așa că am făcut o instalare proaspătă Ubuntu 20.04.3 LTS pe ambele mașini, actualizarea, upgrade-ul, instalarea instrumentelor de bază, instalarea driverului Nvidia + CUDA. Pentru aceasta, pe ambele mașini, am folosit programul de instalare runfile de pe pagina oficială Nvidia Aici pentru CUDA care conține driverul Nvidia. Înainte de a rula acest program de instalare, pun întotdeauna pe lista neagră driverul Noveau, așa cum se arată Aici de exemplu.
Nu m-aș considera un administrator foarte experimentat pentru astfel de sisteme, deoarece provin dintr-un mediu de cercetare, am învățat să folosesc și să înțeleg Linux în ultimele luni și până acum, tot ce aveam nevoie pentru echipa noastră mică a funcționat ca un farmec. Cu excepția unei mici probleme, pe care o întâlnesc atât pe mașina mea personală, cât și pe serverul de cercetare. Se pare că instalările mele de driver sunt întrerupte în mod regulat fără ca eu să pot înțelege de ce și când exact.
De ce să menționăm ambele mașini? Pentru că cred că este aceeași problemă care se exprimă în două moduri diferite:
(1) Aparatul meu personal este cel pe care îl folosesc și pentru lucru și codare. Are un afișaj atașat și la intervale regulate (la fiecare 3-5 săptămâni aș spune), nu pornește în ecranul de autentificare, ci mai degrabă îmi arată o singură linie care spune:
/dev/nvme0n1p1: curat
Nu-mi amintesc linia exactă, dar cu siguranță conține locația SSD-ului meu și lucrul „curat”. Și atunci nu se întâmplă nimic din acest punct. De obicei rezolv problema conectându-mă prin Ctrl+Alt+F2 și pur și simplu rulând din nou programul de instalare cuda/driver cu:
sudo sh cuda_11.5.0_495.29.05_linux.run
și apoi reporniți. După repornire, ecranul meu de conectare revine și totul funcționează din nou.Fac asta de aproximativ un an acum pe mașina mea personală și nu m-a deranjat niciodată să aflu unde este problema, deoarece după reinstalarea CUDA funcționează, TF-GPU funcționează, UI funcționează și tbh. asta e tot ce am nevoie.
(2) Acum vine serverul fără afișaj. Funcționează non-stop fără repornire. Dar la intervale regulate (aceleași 3-5 săptămâni), tot ceea ce are de-a face cu GPU-ul pur și simplu încetează să funcționeze. Scripturile Python care folosesc TensorFlow-GPU nu vor mai găsi GPU-ul.
nvidia-smi
arata mesajul:
NVIDIA-SMI a eșuat deoarece nu a putut comunica cu driverul NVIDIA. Asigurați-vă că cel mai recent driver NVIDIA este instalat și rulează
Într-o zi, totul este acolo și funcționează și fără a manipula manual nimic din sistem (cum ar fi actualizări etc.) va înceta să funcționeze și va afișa acest mesaj. Ca și în cazul aparatului meu personal, simpla reinstalare a driverului va rezolva problema. Dar din moment ce este vorba despre un server de care sunt responsabil și pe care îl folosesc mulți oameni, vreau să mă asigur că am o soluție pentru acesta și că înțeleg problema în detaliu pentru a o evita pe viitor.
Am aruncat o privire /var/log/dpkg.log
pentru a vedea dacă pot găsi vreun mesaj al unui driver actualizat automat. Am urmărit și jurnalele Xorg, de boot și de sistem, dar nu am cunoștințele necesare pentru a găsi indicii despre ce nu merge bine în aceste jurnale. Un lucru pe care l-am aflat este că alergarea:
dpkg --list | grep nvidia
de fapt, nu returnează nimic pe server.nvidia-smi
va imprima mesajul menționat mai sus.
În mod surprinzător, nvcc --version
încă funcționează și oferă:
nvcc: driver de compilator NVIDIA (R) Cuda
Drepturi de autor (c) 2005-2021 NVIDIA Corporation
Construit pe Mon_Sep_13_19:13:29_PDT_2021
Instrumente de compilare Cuda, versiunea 11.5, V11.5.50
Build cuda_11.5.r11.5/compiler.30411180_0
deci se pare că CUDA este încă acolo, dar driverul nvidia nu este.
Atât pe mașina personală, cât și pe server, presupun că este aceeași problemă.Când încerc să rulez nvidia-smi în terminal în timp ce mașina mea personală este defectă, îmi va afișa același mesaj de eroare și sunt sigur că, dacă aș atașa un afișaj la server, nu mi-ar afișa o autentificare Ubuntu. ecran, de asemenea.
Deocamdată, nu am reluat instalarea pe server pentru că am vrut să o las în starea „stricată”, în cazul în care aveți niște sfaturi de unde să căutați problema.
În orice caz, mulțumesc anticipat pentru ajutor!