Što se pokvarilo pri prelasku s 1 na 4 GPU: Sharding, termika i tihi OOM
Kad smo odlučili skalirati naš self-hosted LLM inference setup s jedne na četiri GPU kartice, očekivali smo linearno povećanje performansi. Umjesto toga, naišli smo na niz neočekivanih problema koji su nas natjerali da preispitamo cijelu arhitekturu. U ovom članku otkrivam što se zapravo pokvarilo – od sharding overheada do tihih OOM-ova koji ne ruše proces, ali tiho ubijaju performanse.
Sharding overhead: Kad podjela modela postane usko grlo
Prvi i najočitiji problem bio je sharding. Kada model ne stane u memoriju jedne GPU, morate ga podijeliti na više dijelova. Međutim, komunikacija između GPU-ova preko PCIe sabirnice uvodi kašnjenje koje se brzo akumulira. U praksi, umjesto 4x brzine, dobili smo samo 2.5x – i to uz puno više latencije. Ključni savjet: koristite model parallelism umjesto data parallelism ako vam je latencija kritična.
Termalno gušenje: Kad se GPU kartice pregriju
Drugi problem bio je termalno gušenje. Četiri GPU kartice u istom kućištu stvaraju ogromnu količinu topline. Bez odgovarajućeg hlađenja, temperature su brzo dosegle 85°C, a zatim su se kartice počele gasiti – smanjivati takt kako bi se zaštitile. To je dovelo do drastičnog pada performansi, čak i ispod razine jedne kartice. Rješenje? Undervolting i bolji airflow. Preporučujemo smanjenje napona za 50-100 mV, što može smanjiti temperature za 5-10°C bez gubitka stabilnosti.
Tihi OOM-ovi: Kad memorija nestane bez upozorenja
Najpodmukliji problem bili su tihi OOM-ovi (Out of Memory). Za razliku od klasičnih OOM-ova koji ruše proces, ovi se događaju kada GPU memorija postane fragmentirana ili kada driver ne uspije alocirati kontinuirani blok. Rezultat? Proces i dalje radi, ali inference postaje sporiji za red veličine – jer driver počinje koristiti swap na CPU memoriji. Kako ih detektirati? Pratite nvidia-smi u realnom vremenu i obratite pažnju na GPU-Util koji pada ispod 50% bez očitog razloga. Rješenje je ručno memory defragmentiranje ili korištenje CUDA graphs za smanjenje fragmentacije.
Što smo naučili?
Skaliranje s 1 na 4 GPU nije jednostavno kao dodavanje više hardvera. Zahtijeva pažljivo planiranje sharding strategije, termalno upravljanje i monitoring memorije. Ako planirate sličan upgrade, preporučujemo da prvo testirate s 2 GPU, pa tek onda dodajete treću i četvrtu. I nikad ne zaboravite: više GPU-ova ne znači automatski više performansi – često znači više glavobolje.
Zanima vas ovakva AI tehnologija?
RiNET gradi sovereign AI rjesenja za javni sektor i poduzeca - od civic intelligence do automatizacije nabave.
Kontaktirajte nas →
Komentari