Subiecte populare
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Tocmai ne-am dat seama cum să transferăm UN trilion de parametri între GPU-uri în 1,3 secunde.
Aceasta este o accelerare de 20 de ori față de metodele tradiționale.
Permiteți-mi să vă arăt cum am făcut-o:

Cu 8 ore în urmă
Transferul de greutate este unul dintre cele mai mari blocaje atunci când se efectuează RL distribuit pe modele de mare capacitate.
Primul nostru blog Perplexity Research explică modul în care inginerii de inferență Perplexity au valorificat comunicarea RDMA punct la punct pentru a debloca actualizări ultra-rapide ale parametrilor pentru modele de trilioane de parametri.
Prin valorificarea primitivelor RDMA de nivel scăzut, a programării statice și a canalizării, accelerăm actualizările cu un ordin de mărime, la doar 1,3 secunde pe actualizare.

1/ Problema
Când antrenați modele AI masive cu învățare prin întărire, aveți nevoie de două clustere GPU separate care să lucreze împreună: GPU-uri de antrenament care actualizează modelul și GPU-uri de inferență care îl rulezează.
După fiecare pas de antrenament, trebuie să copiați toate acele greutăți actualizate de la antrenament la inferență. Pentru modelele cu trilioane de parametri, majoritatea sistemelor durează între 30 de secunde și câteva minute pentru a face acest lucru.
Acesta este un blocaj masiv. Pasul de antrenament poate dura 5 secunde, dar apoi aștepți 30 de secunde doar copiind greutăți.
1/ Problema
Când antrenăm modele AI masive cu învățare prin întărire, avem nevoie de două clustere GPU separate care să lucreze împreună: GPU-uri de antrenament care actualizează modelul și GPU-uri de inferență care îl rulezează.
După fiecare pas de antrenament, trebuie să copiem toate acele greutăți actualizate de la antrenament la inferență. Pentru modelul nostru Kimi-K2, majoritatea sistemelor existente durează între 30 de secunde și câteva minute pentru a face acest lucru.
Acesta este un blocaj masiv.
Pasul nostru de antrenament ar putea dura 5 secunde, dar apoi am aștepta 30 de secunde doar copiind greutăți. Inacceptabil.
2/ Vechiul mod
Sistemele tradiționale canalizează totul printr-un GPU "rank-0". Toate GPU-urile de antrenament trimit la un GPU principal, care trimite la un GPU de inferență, care distribuie restului.
Este ca și cum ai forța toată corespondența să treacă printr-un singur oficiu poștal. Această conexiune devine blocajul - limitat la aproximativ 50 de gigaocteți pe secundă.
Știam că trebuie să existe o cale mai bună.
3/ Descoperirea noastră
Soluția noastră: RDMA WRITE - Remote Direct Memory Access.
Cu RDMA, GPU-urile noastre de antrenament pot scrie direct în memoria GPU de inferență. Niciun intermediar. Fără a cere permisiunea. Doar teleportăm datele direct în memoria RAM a altui computer.
GPU-ul care primește nici măcar nu este notificat. Este o operațiune "unilaterală".
Și iată cheia: FIECARE GPU de antrenament vorbește direct cu FIECARE GPU de inferență. Toate dintr-o dată. În paralel. Saturăm întreaga țesătură de rețea în loc să blocăm pe o singură legătură.
De asemenea, folosim pipelining - împărțirea transferurilor în etape suprapuse, astfel încât diferite resurse hardware să rămână ocupate simultan.
În plus, calculăm programul de transfer o dată la pornire și îl reluăm. Fără cheltuieli generale de planificare repetate.

4/ Rezultatele noastre
Pentru Kimi-K2 cu 1 trilion de parametri: 1,3 secunde pentru a transfera de la 256 de GPU-uri de antrenament la 128 de GPU-uri de inferență.
Asta mută aproximativ 2 terabytes de date în puțin peste o secundă. Printr-o rețea. Între mașini.
Când ardem mii de dolari pe oră pe clustere GPU, eliminarea acestui blocaj înseamnă economii masive de costuri și cicluri de iterație mai rapide.


4/ Rezultatele noastre
Pentru Kimi-K2 cu 1 trilion de parametri: 1,3 secunde pentru a transfera de la 256 de GPU-uri de antrenament la 128 de GPU-uri de inferență.
Asta mută aproximativ 2 terabytes de date în puțin peste o secundă. Printr-o rețea. Între mașini.
Când ardem mii de dolari pe oră pe clustere GPU, eliminarea acestui blocaj înseamnă economii masive de costuri și cicluri de iterație mai rapide.



5/ De ce contează
Partea elegantă? Nu am inventat hardware nou. Am folosit doar tehnologia RDMA existentă cu ingineria sistemelor inteligente.
Uneori, cele mai bune soluții nu sunt despre inventarea a ceva nou - ci despre utilizarea instrumentelor existente foarte, foarte bine.
Așa construim la Perplexity.

Aceasta este prezentarea generală a sistemului nostru de transfer de greutate. Dar sunt sigur că aveți cu toții întrebări, nu?
Întreabă-mă orice.

58,09K
Limită superioară
Clasament
Favorite