Meidän GB10-kone sammui itsestään. Lokeissa syytettiin muistia; syynä oli lämpö.

Ylläpito

Yksi kolmesta NVIDIA GB10 -koneestamme sammui kolme kertaa neljässä päivässä syyskuussa: 10. syyskuuta, 12. syyskuuta (se pysyi pois päältä 17 tuntia) ja 13. syyskuuta kaksitoista minuuttia virran kytkemisen jälkeen. Jokaisella kerralla tarvittiin henkilö painamaan virtapainiketta.

Miltä lämpösammutus näyttää

Järjestelmäloki loppui kesken toiminnan, eikä siinä ollut sammutusta: kova virrankatkaisu ei anna journaldille aikaa kirjoittaa puskuriaan. Heinäkuussa vastaavan sammutuksen jälkeen kello palasi vanhaan päivämäärään. Ja laitteistovahti, joka käynnistää jumiutuneen koneen uudelleen, ei tehnyt mitään, koska kone ei ollut jumiutunut: virta oli poissa.

Väärä vihje

Viimeiset kernelin rivit ennen jokaista sammumista olivat GPU:n muistivirheitä (NV_ERR_NO_MEMORY), joten muisti näytti syylliseltä. Ei ollut. Nämä rivit olivat yksinkertaisesti yleisin kernelin kirjoittama viesti: 440 580 kappaletta yhdessä käynnistyksessä, joka oli kestänyt 19 päivää ennen päättymistään. Kun rivi esiintyy niin usein, se on viimeinen rivi ennen mitä tahansa. Ennen kuin syytät lokiriviä, laske kuinka usein se esiintyy, kun mitään ei mene vikaan.

Oikea vihje

Koska loki menettää viimeiset minuuttinsa virrankatkaisussa, lisäsimme pienen näytteenottimen, joka kirjoittaa lämpötilat, kuormituksen ja muistin tiedostoon minuutin välein ja tyhjentää sen levylle. Se havaitsi kaikki viisi sammumista heinäkuusta lähtien. Jokainen tapahtui täydellä GPU-kuormituksella (96 %), kun CPU oli 85–97 °C:ssa.

Ajankohta selitti loput. Syyskuun alussa olimme siirtäneet videon renderöinnin tälle koneelle. Sen GPU:n teho täydellä kuormituksella nousi noin 24 W:sta 46 W:iin, GPU:n mediaanilämpötila nousi 68:sta 86 °C:seen ja minuutit viikossa, joinen CPU oli 95 °C:ssa tai enemmän, nousivat nollasta 4 283:een. Kaksi muuta GB10-konettamme, jotka ajavat kielimallia samalla 96 %:n kuormituksella, pysyivät 65–81 °C:ssa. Tämä kone yksinkertaisesti jäähtyi huonommin.

Ensimmäinen korjaus: GPU-kellon yläraja

GB10:ssä nvidia-smi ei voi asettaa tehon rajaa, mutta se voi rajoittaa GPU-kellon: nvidia-smi -lgc 0,2000. Heinäkuussa tämä laski kuumimman alueen 91 °C:sta 77–83 °C:seen sekunneissa. Kaksi yksityiskohtaa ovat tärkeitä:

Toinen korjaus: lämpöturvaraja portaissa

Raja ei riittänyt, kun renderöinti otettiin käyttöön, joten turvaraja lukee nyt jokaista anturia kerran sekunnissa ja toimii portaissa: matalampi GPU-kellotaajuus 89 °C:sta ja vielä matalampi 92 °C:sta; 94 °C:sta renderöijä keskeytetään (SIGSTOP) ja CPU hidastetaan; 96 °C:sta jokainen GPU-työ keskeytetään niin moneksi sekunniksi kuin jäähdytys vaatii. Se palautuu vain, jos kone on pysynyt viileämpänä jonkin aikaa. 97 °C:ssa 20 sekunnin ajan viimeisenä keinona oleva jarru pysäyttää videopalvelun kokonaan.

Ensimmäisen yhdeksän minuutin aikana renderöinnin alla kuumin alue huippusi 94 °C:ssa mediaanin ollessa 89 °C, verrattuna aiempiin 97 °C:n tasoitusjaksoihin. Siinä on hintansa: yhtenä päivänä syyskuun puolivälissä renderöijä oli keskeytettynä 17 % ajasta, ja GPU kävi 900 MHz:ssa tai alle suurimman osan päivästä. Eikä se ole parannuskeino: kone sammui vielä kerran 11. lokakuuta 97–98 °C:ssa. Se on käynyt keskeytyksettä sen jälkeen, 20 päivää kirjoittaessamme tämän.

Neljä virhettä, jotka teimme matkan varrella

Pääpointti

Ohjelmisto piti tämän koneen käynnissä, mutta syy oli fyysinen: sen jäähdytys oli kaksi tai kolme kertaa heikompi kuin sisarusyksiköiden. Jos GB10-kone sammuu itsestään kuormituksessa, tarkista ensin ilmavirtaus. Rajoita sitten GPU:n kelloa ennen palvelujen käynnistymistä, keskeytä raskaat työt ennen kuin kone saavuttaa rajansa, ja aseta hälytykset sen todellisten käyttölämpötilojen mukaan.

Factory Floor sisältää tällaisen lämpöturvarajan: se lukee GPU:n ja lämpövyöhykkeen antureista korkeimman arvon, keskeyttää nimeämäsi raskaat työt asetetussa lämpötilassa (oletuksena 92 °C) ja jatkaa niitä vasta alemmassa lämpötilassa (84 °C), ja mukana ovat myös muisti- ja levyturvarajat.

Päivitetty: