Qwen mitināšana uz Blackwell

Kā mēs apkalpojam Qwen3 235B uz NVIDIA GB200 NVL72 statnēm, samazinot secinājumu izmaksas, vienlaikus saglabājot modeļa precizitāti.

AutoriPerplexity Research

NVIDIA GB200 NVL72 statnes ar NVIDIA Blackwell GPU, kas savstarpēji savienotas, izmantojot 72 virzienu NVLink, ir ideāli piemērotas lielu ekspertu maisījuma (MoE) modeļu izvietošanai. Šajā emuāra ierakstā mēs aprakstām secinājumu iestatījumu, kas apkalpo pēcapmācītus Qwen3 235B modeļus, kuri nodrošina daļu no Perplexity datplūsmas. Mēs parādām, kā mēs pielāgojām savu iekšējo secinājumu dzinēju, lai izmantotu NVIDIA Blackwell GPU uzlabotos tenzora kodolus un ātrdarbīgo starpsavienojumu. Ar šo aparatūru mēs apstrādājam lielāku datplūsmu par zemākām izmaksām, nezaudējot pamata modeļu precizitāti.

Izvietošana GB200 NVL72 sistēmā

GB200 NVL72 statnes sastāv no 18 mezgliem ar 2 ARM balstītiem NVIDIA Grace centrālajiem procesoriem un 4 Blackwell balstītiem GPU, no kuriem katrs ir aprīkots ar 180 GB HBM. 72 GPU ir savstarpēji savienoti, izmantojot NVLink un 18 NVLink slēdža ASIC, nodrošinot 1800 GB/s joslas platumu starp jebkuriem diviem vienaudžiem un kopīgojot pietiekami daudz atmiņas triljonu parametru modeļu mitināšanai. Turklāt ConnectX-7 InfiniBand adapteri nodrošina papildu 400 Gb/s joslas platumu gan statnes mezglos, gan starp blakus esošajām statnēm.

Lai apstrādātu datplūsmu, mēs izvēlējāmies veikt Qwen modeļu pēcapmācību un apkalpošanu. Šajā emuāra ierakstā mēs koncentrējamies uz Qwen3 235B, taču daudzas no apspriestajām apkalpošanas tehnikām un veiktspējas īpašībām ir līdzīgas jaunākiem Qwen3.5 397B un 122B modeļiem, uz kuriem mēs migrējam. Paralēlisma ziņā lineārā uzmanība ir līdzīga pilnīgai pašuzmanībai, un esošo MoE slāņa ieviešanu var viegli pielāgot, lai pielāgotos jaunajiem vārtu terminiem. Lai uzturētu konsekventu dekodēšanas ātrumu, vienlaikus maksimāli palielinot caurlaidspēju, mēs esam izvēlējušies atdalīt priekšuzpildi no dekodēšanas, abiem mezglu veidiem izvietojot dažādas paralēlisma stratēģijas. Saziņa starp priekšuzpildītāju un dekodētāju tiek nodrošināta, izmantojot InfiniBand, savukārt NVLink joslas platums ir rezervēts saziņai starp priekšuzpildītājiem un dekodētājiem. Blackwell ierīču veiktspējas īpašības, veicot matricu reizināšanu un starp ierīcēm notiekošo saziņu, kas tiek pētītas šajā emuāra ierakstā, nosaka izmantotās sadalīšanas stratēģijas. Salīdzinājumā ar NVIDIA Hopper GPU mēs redzam uzlabojumus kodols pēc kodola, pateicoties lielākam straumējošo multiprocesoru skaitam, palielinātam atmiņas joslas platumam un mazākai vienālranga latentā.

Sadalīts prefills un dekodēšana ar InfiniBand starp prefilleriem un dekoderiem un NVLink katrā izvietojumā.

Mūsu TransferEngine, kas īsteno atdalītu priekšuzpildi, apstrādāja patvaļīgu un, iespējams, nesaskaņotu sadalīšanu starp priekšuzpildītājiem un dekodētājiem. KV kešatmiņas ir izkārtotas atmiņā HND secībā, galviņām esot vadošajā dimensijā un žetoniem saglabātiem blakus, lai ļautu sadalītu KV kešatmiņu priekšuzpildītājā vēl vairāk sadalīt vai savienot lidojuma laikā pārsūtīšanas uz dekodētāja mezglu laikā.

Priekšuzpildītāji

Priekšuzpildītāja mezgli saņem pieprasījuma ievades žetonus, aizpildot KV kešatmiņas un pārsūtot tās uz dekodētājiem, lai turpinātu teksta ģenerēšanu. Priekšuzpilde ir skaitļošanas ziņā intensīva, jo tūkstošiem žetonu, kas pieder secībai, tiek apstrādāti vienlaikus.

Līdz ar to mēs atklājām, ka tenzora paralēlā izvietošana ir piemērota, jo modelis ir sadalīts starp 4 GPU vienā GB200 mezglā, un projekcijas un eksperti ir sadalīti (TP=4, EP=4). Tā kā gan uzmanība, gan MLP ir ierobežoti ar skaitļošanu, abi gūst labumu no paralēlisma, sadalot ekspertus un uzmanības galviņas starp atsevišķiem rangiem. Turpmāks paralēlisms būtu devis mazāku atdevi, jo caurlaidspējas uzlabojums, mitinot mazāk ekspertu katrā rangā (16 pret 32), nebūtu kompensējis papildu izmaksas par 8 virzienu visu samazināšanu un hosta puses koda sadalīšanas pieskaitāmajām izmaksām starp diviem mezgliem, kas prasa saziņu, izmantojot Ethernet.

Qwen3 235B ir tikai 4 atslēgu-vērtību galviņas, kas prasa k un v projekciju dublēšanu starp rangu pāriem, ja tiek izmantotas 8 ierīces. Mēs būtu varējuši apsvērt agresīvāku sadalīšanu, lai samazinātu atmiņas daudzumu, kas nepieciešams svaru glabāšanai katrā rangā, atbrīvojot telpa vairāk žetoniem KV kešatmiņā. Tomēr mēs atklājām, ka plašāka izvietošana nebija tā vērta.

Pieņemot, ka ievades garums ir aptuveni 6000 žetonu, katram no 128 ekspertiem tam ir novirzīti aptuveni 6000 * 8 / 128 = 375 žetoni, nodrošinot blīvu problēmu MoE GEMM. Tā kā tas jau piesātina ierīces skaitļošanas caurlaidspēju, datu paralēlisms priekšuzpildei nav nepieciešams.

Neraugoties uz kvadrātiski pieaugošajām uzmanības izmaksām, priekšuzpildītāji nodrošina konsekventu caurlaidspēju, ļaujot aptuveni novērtēt ievades žetonu skaitu, ko mezgls var apstrādāt sekundē. Paļaujoties uz metrikām, kas izseko pieprasījumu kopējo ievades žetonu skaitu, priekšuzpildītāja mezglu skaitu var palielināt, lai nodrošinātu, ka kopējā priekšuzpildes caurlaidspēja ir attiecīgi izmēros pielāgota. Lai izvairītos no rindu veidošanās, priekšuzpildītāja kopiju skaits tiek saskaņots ar saņemto ievades žetonu kopējo skaitu.

Dekodētāji

Dekodētāja mezgli saņem KV kešatmiņas no priekšuzpildītājiem un ģenerē žetonus pa vienam. Dekodēšana parasti ir ierobežota ar atmiņu: ar dažiem ievades žetoniem matrica reizināšana ir pilnībā ierobežota ar svaru ielādes izmaksām no HBM tenzora kodolos. Papildus atšķirīgas sadalīšanas stratēģijas izmantošanai vairāki kodoli ir jāpielāgo, lai labāk paralelizētu skaitļošanu un atmiņas piekļuvi.

Atšķirībā no priekšuzpildes, uzmanības sadalīšana vairs nav izdevīga: uzmanības galviņu sadalīšana starp vairākām ierīcēm nozīmētu, ka vienā ierīcē ir mazāk iespēju paralēlismam. Līdz ar to tiek izmantots tikai datu paralēlisms un ekspertu paralēlisms: eksperti tiek sadalīti starp vairākām ierīcēm, bet katra ierīce pārvalda savas KV kešatmiņas un pieprasījumus. Bez tenzora paralēlisma uz žetonu attiecinātā KV kešatmiņas izmērs ierīcē ir lielāks. Tomēr telpa atmiņā tiek atbrīvota, novietojot mazāk ekspertu vienā mezglā. Atšķirībā no Hopper, kur mēs ierobežojām tenzora paralēlismu vienā NVLink domēnā 8 GPU mezglā, Blackwell gadījumā mēs atklājām, ka paplašināšanās starp vairākiem mezgliem domēnā, izmantojot līdz pat 16 ierīcēm, ir izdevīga.

Lai maksimāli palielinātu caurlaidspēju, dekodētāji apstrādā lielāku pieprasījumu skaitu vienlaikus. Lai gan papildu pieprasījumi rada minimālas pieskaitāmās izmaksas MoE slāņos un citās projekcijās, tie nesamērīgi palielina uzmanības izmaksas. Lai saglabātu saprātīgu minimālo dekodēšanas ātrumu, dekodētāja mezglu skaits tiek mērogots, lai saglabātu vienam dekodētājam paredzētos pakešu izmērus zem noteikta sliekšņa.

Līdzīgi kā iepriekšējos Hopper izvietojumos, mēs izmantojam spekulatīvu dekodēšanu ar iekšēji apmācītiem MTP slāņiem, lai palielinātu dekodēšanas ātrumu. Par laimi, pamata aparatūra un programmēšanas ietvari ir pietiekami līdzīgi, lai pilnībā kopīgotu ieviešanu starp abām arhitektūrām.

Saziņa mezgla ietvaros un starp mezgliem

Galvenā atšķirība starp GB200 NVL72 un iepriekšējiem Hopper mezgliem ir lielais NVLink domēns, kas nodrošina vienālranga saziņu ārpus iepriekšējā 8 ierīču limita. Lai gan Blackwell ierīces ir izvietotas 8 GPU mezglos, mērogošanai starp vairākiem mezgliem, izmantojot NVLink, salīdzinājumā ar lēnāku InfiniBand tīklu ir liela vērtība.

Priekšuzpildītāja mezglos mēs paļaujamies uz visu mezglu kopējo samazināšanas (all-reduce) saziņu uzmanības slāņu ietvaros un uz ekspertu paralēlu samazināšanu, kas ļoti atgādina all-reduce. Starp 4 GPU mēs izmantojam gan NVLink, gan NVIDIA SHARP (mērogojamu hierarhisku agregācijas un samazināšanas protokolu): papildus vienālranga joslas platumam mēs izmantojam arī samazinājumus NVLink slēdzēs, lai vēl vairāk samazinātu latentumu un ieviestu ātrās apraides. Dekodētāja mezglos tiek izmantota pielāgota all-to-all nosūtīšanas un apvienošanas ieviešana, izmantojot NVLink. Kodoli ir ieviesti iekšēji, izmantojot CuTeDSL un cuMem kartēšanu vai multiraides kartēšanu.

Visu samazināšana (All-Reduce)

Priekšuzpildītāji veic all-reduce operāciju uzmanības slāņa izvades projekcijā, summējot iesaistīto rangos sadalīto galviņu ieguldījumus. Tenzora paralēlisms ir efektīvs tikai tad, ja all-reduce pieskaitāmo izmaksu izmaksas tiek kompensētas ar mazāku matrica reizināšanas problēmu samazināto latentumu. Šis pieņēmums parasti attiecas uz priekšuzpildi.

Datu centra klases NVIDIA HGX H200 un GB200 NVL72 sistēmās GPU parasti ir savienoti, izmantojot NVLink slēdžus. Papildus maršrutēšanai slēdži var veikt samazināšanas operācijas starp savienotajām ierīcēm, izmantojot SHARP. Pēc atmiņas kartējumu izveides un reģistrēšanas multiraides grupā, izmantojot CUDA API, kodoli var izmantot multicast.ld_reduce un multicast.st, lai apkopotu un apraidītu vērtības caur slēdzem. Lai izveidotu pamatu un atkārtoti izmantojamus komponentus, kurus var sapludināt citos kodolos, mēs iekšēji uzturam CuTeDSL all-reduce kodolu, izmantojot šos primitīvus.

Sistēmā ar N GPU, kas samazina B baitus, triviālai ieviešanai būtu vienālranga ielādes vērtības no visiem pārējiem vienaudžiem, kopā radot N * (N - 1) * B baitu nolasīšanas datplūsmu. Efektīvāka ieviešana sadalītu datus, kas jāsamazina, starp vienaudžiem, katram samazinot ievades daļu, pēc tam apraidot to pārējiem. Tā rezultātā tiek nolasīti (N - 1) * (B / N) baiti vienā vienaudzī un apraidīti pārējiem, kopā radot (N - 1) * B * 2 nolasīšanas un rakstīšanas reizes, kas samazina datplūsmu caur slēdzem.

NVSwitch visu samazināšanas trafiks ar GPU puses akumulāciju un slēdža atbalstītu samazināšanu.

Ar SHARP samazināšanu un apraidi var veikt efektīvāk: tā vietā, lai ierīcē nolasītu (N - 1) * (B / N) baitus vietējai uzkrāšanai, no slēdža tiek pārvietoti tikai B / N baiti, jo tas pats veic samazināšanu, izmantojot datus no vienaudžiem. Apraidei ir līdzīgs uzlabojums, jo transakciju skaits starp GPU un slēdzi caur NVLink kanāliem ir ievērojami samazināts. Bez SHARP uzkrājošā ierīce veiktu (N - 1) * (B / N) transakcijas pār NVLink ar slēdzi, slēdzim nolasot tādu pašu datu apjomu no vienaudžiem, kopā radot 2 * (N - 1) * (B / N) transakcijas. Ar SHARP starp GPU un slēdzi tiek veiktas B / N transakcijas, un vēl (N - 1) * (B / N) ar vienaudžiem, kopā radot B transakcijas.

Pateicoties tā vienkāršībai, SHARP ir vērtīgs rīks, jo tas nodrošina vienkāršu aparatūras ieviešanu algoritmam. Lai gan pārsūtīšana tiek samazināta par teorētisku N / (2 * (N - 1)) daļu (kas ar 4 vienaudžiem ir 33%), praksē mēs novērojam 10% uzlabojumu gan priekšuzpildes, gan dekodēšanas latentumā gan H200, gan GB200 NVL72 sistēmās.

NVLink un NVLS nosūtīšanas latentums uz H200 un GB200 pie TP=4 ar 16K tokeniem.

MoE nosūtīšana un apvienošana (Dispatch - Combine)

MoE modeļiem nosūtīšanas un apvienošanas kodoli pārvieto un grupē žetonus turpmākajām MoE GEMM problēmām starp vienaudžiem, pēc tam kombinācijā veicot svērtu uzkrāšanu. Mēs esam pielāgojuši savus esošos nosūtīšanas un apvienošanas kodolus Blackwell, portējot tos uz CuTeDSL, pielāgojot bloku izvietojumu un agresīvi specializējot tos starp priekšuzpildi un dekodēšanu.

Ekspertu paralēlisms

Ekspertu paralēlais (EP) kodols tiek izmantots priekšuzpildītājos. Tā kā tā ievades tiek dublētas visos rangos, nosūtīšanas kodolam ir vienkārši jāatlasa žetoni, kas novirzīti uz ekspertiem pašreizējā rangā. Tas apkopo maršrutēšanas informāciju un sagatavo žetonus buferos, ko izmanto kā ievades MoE GEMM. Apvienošanas kodols vispirms veic vietējo uzkrāšanu starp žetonu ieguldījumiem, kas novirzīti uz ekspertiem pašreizējā rangā, pēc tam tas veic all-reduce visos rangos.

Dekodēšanai viss kodols ir sapludināts vienā. Priekšuzpildes kodols ir sadalīts vairākos kodolos, jo maršrutēšanai un all-reduce ir nepieciešams mazāk bloku nekā vietējās apvienošanas solim. Ar CuTeDSL mēs varējām izveidot vispārēju bibliotēku gan SHARP, gan NVLink all-reduce un vienālranga sinhronizācijai, iekļaujot to gan all-reduce, gan ekspertu paralēlajos kodolos.

Ekspertu paralēlās prefilla nosūtīšanas un apvienošanas latentums uz H200 un GB200 dažādās ekspertu paralēlās konfigurācijās.

Veiktspējas ziņā mēs novērojam, ka Blackwell ir ievērojami ātrāks nekā Hopper, pateicoties uzlabotam pārsūtīšanas ātrumam, lielākam atmiņas joslas platumam un labākai skaitļošanas caurlaidspējai. Sadalīts starp 8 ierīcēm un vairākiem mezgliem GB200 sistēmās (EP=8), kodoli kļūst ātrāki, jo vietējā uzkrāšana darbojas ar daudz mazāku žetonu skaitu katrā ierīcē, un ar SHARP samazināšanas izmaksas starp vairākiem rangiem mērogojas labāk. Tomēr praksē mēs ierobežojam paralēlismu līdz 4 ierīcēm, jo šie paātrinājumi nav universāli visiem kodoliem.

Datu paralēlisms un ekspertu paralēlisms

Datu paralēlais un ekspertu paralēlais (DP-EP) kodols tiek izmantots datu paralēlajos dekodētājos. Tas apraida dažādus žetonus no visiem rangiem uz ekspertiem, pārsūtot rezultātus uz izcelsmes rangiem un tos uzkrājot. Tā kā tas ievieš retu all-to-all problēmu, tas balstās tikai uz NVLink.

Hopper sistēmā šis kodols ir ierobežots līdz 8 ierīcēm viena mezgla NVLink domēnā. Tomēr GB200 sistēmās mēs varam to mērogot visā statnē. Lielākā daļa koda tiek izmantota atkārtoti. Vienīgā atšķirība ir fabric rokturu izmantošana, lai apmainītos ar vienālranga informāciju virs IMEX sākotnējai iestatīšanai.

GB200 nosūtīšanas un apvienošanas latentums datu paralēlās un ekspertu paralēlās konfigurācijās.

Tā kā dekodēšanas laikā radītie pārsūtīšanas izmēri ir mazi, tie nebūt nepiesātina NVLink joslas platumu un tā vietā ir ierobežoti ar latentumu. Latentums ir desmitiem mikrosekunžu robežās un paliek samērā stabils, palielinoties vienaudžu skaitam, ļaujot mums izplatīt izvietojumu lielākā ierīču skaitā, neradot ievērojamu papildu latentumu.

MoE GEMM

MoE modeļi gūst labumu no ekspertu paralēlisma, jo visu žetonu reizināšanas izmaksas ar visiem ekspertiem var viegli paralelizēt starp vairākām ierīcēm. Ar tenzora paralēlismu priekšuzpildītājos blīvām problēmām ieguvums ir diezgan vienkāršs, jo katram rangam tagad ir jāveic mazāk aprēķinu. Dekodēšanas gadījumā datu paralēlisms nodrošina papildu ieguvumu papildus ekspertu paralēlismam, jo lielāks paralēlo pieprasījumu skaits novirza vairāk žetonu uz katru ekspertu, padarot problēmas blīvākas.

Mūsu ieviešanā mēs pašlaik paļaujamies uz CUTLASS CUDA/C++ kodoliem matrica reizināšanai. Mēs tos testējām ar retām dekodēšanas ievadēm ar dažādām kvantēšanas shēmām un paralēlisma līmeņiem, lai izlemtu optimālo sadalīšanas stratēģiju dekodētājiem. Tālāk sniegtajos testos visi eksperti tiek aktivizēti ar vienu žetonu.

Grupēts MoE GEMM latentums dažādās ekspertu paralēlās konfigurācijās un kvantizācijas shēmās uz H200 un GB200.

Mēs atklājām, ka 128 ekspertu mērogošana starp vairāk nekā 16 rangiem ar CUTLASS dod mazāku atdevi, jo 2 ekspertu reizināšanas izmaksas nav būtiski zemākas nekā 4 reizināšana. Ir redzams uzlabojums Blackwell salīdzinājumā ar Hopper, pat ar suboptimālo bloku mērogošanas stratēģiju. Tā kā latentuma pieaugumu par apmēram 5 us starp EP=8 un EP=16 nosūtīšanai/apvienošanai atsver GEMM izmaksu samazinājums par vairāk nekā 10 us, GB200 sistēmās dekodētāju sadalīšana starp 16 rangiem ir pamatota, ko apstiprina arī pilna cikla (end-to-end) testi.

Kvantēšana

Blackwell ievieš aparatūras atbalstu jaunām 8 bitu un 4 bitu kvantēšanas shēmām. Atšķirībā no Hopper, kas balstījās uz tenzora vai bloka mērogošanas faktoriem, Blackwell ir nepieciešama mikromērogošana, lai sasniegtu vislabāko priekšuzpildes un dekodēšanas caurlaidspēju. Lai gan bloku mērogošanas shēma, ko izmanto tādiem modeļiem kā DeepSeek vai Kimi, ir pieejama, mikromērogošana ir efektīvāka.

Mēs esam izvietojuši Qwen3 235B ar MXFP8 kvantēšanas shēmu, statiski konvertējot svars pēc modeļa mikronoslīpēšanas. Precizitātes ietekme bija līdzīga bloku mērogošanas ietekmei ar stohastisko kvantēšanu, taču sniegtā veiktspēja bija daudz labāka, kā parādīts MoE GEMM mikrotestos. Mēs esam apsvēruši arī MXFP4 un NVFP4 kvantēšanas shēmas, lai gan precizitātes ietekme bez kvantēšanas apzinātas apmācības bija pārāk liela sākotnējai pārejai no Hopper uz Blackwell. Mēs plānojam rūpīgāk izpētīt šos formātus turpmākajā darbā.

Pilna cikla veiktspēja

Mēs veicām Blackwell Qwen3 235B izvietojumu dekodētāju testēšanu un salīdzinājām tos ar mūsu iepriekšējiem Hopper izvietojumiem. Šajā iestatījumā mēs apsvērām bloku mērogošanu abos izvietojumos, lai koncentrētos uz paralēlisma ietekmi. TP=4 priekšuzpildītāji tika atdalīti abām arhitektūrām, lai izolētu dekodēšanas veiktspēju. Zemāk redzamais attēls ilustrē dekodēšanas caurlaidspēju, pieņemot reālistisku melnraksta pieņemšanas ātrumu, ko nodrošina mūsu MTP slāņi.

Qwen3 235B FP8 dekodēšanas ātrums un caurlaidspēja uz GPU dažādās H200 un GB200 ekspertu paralēlās konfigurācijās, pieņemot melnraksta pieņemšanas garumu 0.8.

Hopper gadījumā izvietojuma sadalīšana starp vairāk nekā 8 GPU nav dzīvotspējīga, jo latentums starp InfiniBand, īpaši uz EFA adapteriem, ir ievērojami lēnāks. Tomēr Blackwell gadījumā mēs sasniedzam ievērojami augstāku caurlaidspēju, pateicoties lielākiem NVLink domēniem.

Mēs sasniedzām sākotnējo Blackwell ieviešanu, vispārinot esošos Hopper kodolus un palielinot NVLink balstīto kodolu veiktspēju. Mēs turpināsim samazināt Qwen apkalpošanas izmaksas, uzlabojot kvantēšanu un mikronoslīpējot citu cauruļvada kodolu dekodēšanas veiktspēju un priekšuzpildes caurlaidspēju.

Atsauces

Transfer Engine emuāra ieraksts

CuTeDSL emuāra ieraksts

Prefill-Disagg emuāra ieraksts

Spekulatīvās dekodēšanas emuāra ieraksts

CUTLASS

NVLink

Citāts

BibTeX
@online{perplexity2026HostingQwenOnBlackwell,
  author = {{Perplexity} and Nandor Licker and Kevin Hu and Bex Brooker and Erin McKnight},
  title = {{Hosting Qwen on Blackwell}},
  date = {2026-05-12},
  url = {https://www.perplexity.ai/hub/blog/hosting-qwen-on-blackwell}
}