PCIe linky a topologie v multi-GPU AI serveru
V oblasti spotřebitelské umělé inteligence přetrvává mýtus, že „PCIe x8 vs. x16 nehraje roli v inferenci“. Většinou je to pravda a lidé, kteří to opakují, téměř nikdy nevědí proč. Také mají tendenci selhat v okamžiku, kdy se jich zeptáte, proč desktopová základní deska nemůže hostovat čtvrtou grafickou kartu s plnou šířkou pásma, nebo proč se server EPYC s 8 grafickými kartami nechová jako dva stolní počítače se 4 grafickými kartami slepené dohromady.
Tento článek je podrobnější verzí. Zabývá se tím, co jsou linky PCIe, jak jsou alokovány na procesorech, se kterými Kentino staví, k čemu slouží bifurkace a přepínače, kam se hodí NVLink (a kam ne) a kdy na topologii skutečně záleží. Končí konkrétními diagramy pro 4 a 8 GPU platformy EPYC, které dodáváme.
Co je to linka PCIe, stručně
PCIe linka je dvojice diferenciálních sériových linek – jedna pro každý směr – mezi kořenovým komplexem CPU (nebo následným přepínačem) a zařízením. Více linek je propojeno a tvoří širší linku: x1, x4, x8, x16. Šířka pásma se lineárně škáluje s počtem linek a s každou generací se zhruba zdvojnásobuje.
| Generace | Neupravené na dráhu | x16 surový | x16 použitelné (~) |
|---|---|---|---|
| Gen3 | 8 GT / s | 16 GB / s | ~ 15.75 GB / s |
| Gen4 | 16 GT / s | 32 GB / s | ~ 31.5 GB / s |
| Gen5 | 32 GT / s | 64 GB / s | ~ 63 GB / s |
| Gen6 | 64 GT / s | 128 GB / s | ~ 121 GB / s |
Dvě výhrady. Šířka pásma je pro každý směr — linka Gen5 x16 dosahuje rychlosti 64 GB/s v obou směrech současně, a proto marketingové prezentace uvádějí buď „64 GB/s“, nebo „128 GB/s“. A Gen6 se nedodává v žádné GPU, kterou si dnes můžete koupit. Specifikace je finalizována, ale křemík se od května 2026 nenachází v kartách pro pracovní stanice; první koncové body Gen6 jsou součástky určené pouze pro datová centra, s nimiž Kentino nestaví. Pro naši aktuální sestavu – RTX 5090, RTX 4090, RTX Pro 6000 Blackwell (obě varianty), L40, L4 – je Gen5 x16 stropem.
Rozpočty linek na socket CPU
Zde se stává viditelnou hranice mezi stolním počítačem / pracovní stanicí / serverem. Po odečtení počtu procesorů vyhrazeného pro čipset / DMI se v aktuálních sestaveních Kentina počítá počet pruhů:
| Třída procesoru | Generace | Celkový počet linek PCIe | Použitelné pro GPU / síťové karty / NVMe |
|---|---|---|---|
| Intel Core (LGA1700/1851) | Směs Gen5/4 | 20 | ~20 (velmi těsné) |
| Intel Xeon W7 / W9 (Sapphire R.) | Gen5 | 112 | ~ 112 |
| AMD Ryzen 9000 (AM5) | Gen5 | 28 | ~ 24 |
| Threadripper AMD 7000 | Gen5 | 92 | ~ 88 |
| AMD Threadripper Pro 7000 WX | Gen5 | 128 | ~ 128 |
| AMD EPYC Janov (9004) | Gen5 | 128 | ~128 (jedna zásuvka) |
| AMD EPYC Turín (9005) | Gen5 | 128 | ~128 (jedna zásuvka) |
| Dvoupaticový procesor AMD EPYC | Gen5 | 160 | sdíleno přes xGMI |
Z toho okamžitě vyplývají tři důsledky.
CPU pro spotřebitelské stolní počítače nemůže hostit čtyři GPU s plnou šířkou pásma. S celkovým počtem 20–28 linek přidělíte jeden x16 primárnímu slotu, jeden x4 NVMe a máte vyčerpané možnosti. Sestavení „4GPU pro stolní počítače“, která rozdělují x16 na 4×x4, fungují pro inferenci, protože většina inference nesaturuje x4 Gen5 (~16 GB/s). Nefungují pro trénování napříč kartami kvůli provozu gradientní synchronizace.
Pracovní stanice Xeon W nebo Threadripper Pro pohodlně pojme čtyři grafické karty v rozlišení x16 – 64 linek pro grafické karty, dostatek zbývá pro NVMe a síťovou kartu 25/100 GbE.
Jednosocketový EPYC Genoa nebo Turin vám poskytne 128 linek, což je jediný rozumný způsob, jak postavit server s 8 GPU a všemi osmi kartami v x16. Dvousocketový EPYC sice nominálně přidává linky, ale zisk je menší, než se zdá, protože provoz mezi sockety teče přes xGMI, které je omezené a sdílené.
Bifurkace: rozdělení x16 na menší kousky
Slot PCIe je fyzicky x16, ale hostiteli lze přikázat, aby jej elektricky prezentoval jako menší linky. Standardní řezy jsou:
- x16 → 2 × x8
- x16 → 4 × x4
- x8 → 2 × x4
Rozdvojení se nachází v CPU a je odhaleno v BIOSu základní desky. Zda ho skutečně můžete použít, závisí na třech věcech, které jsou splněny současně: CPU ho podporuje, BIOS tuto možnost zpřístupňuje a rozšiřující/základní deska je zapojena tak, aby správně rozdělila linky. První dvě věci obvykle fungují na deskách serverové třídy (Supermicro, ASRock Rack, Gigabyte). Třetí je to, kde se lidé popálí – různí dodavatelé mapují linky odlišně.
Rozdvojení je trik, který umožňuje do šasi vejít více grafických karet (GPU), než pro kolik má CPU x16 slotů. Server EPYC s 8 GPU má zřídka 8 nativních kořenových portů x16; jedná se o kombinaci nativních a rozdvojených slotů směrovaných přes rozšiřující porty, přičemž každá GPU má x16 nebo x8 v závislosti na rozložení.
Co ztratíte: šířku pásma na kartu. Rozdvojené propojení x8 Gen5 je 32 GB/s – polovina oproti x16. Pro inferenci je to neviditelné. Pro trénování s více GPU se to projeví v gradientní synchronizaci a průchodu aktivací.
PCIe přepínače a retimery
Pokud rozdvojení nestačí – řekněme, že chcete osm GPU, všechny na x16 – řešením je přepínač PCIe. Řada Broadcom PEX je kanonickým příkladem. Přepínač třídy PEX 89000 bere jeden x16 proti proudu od CPU a rozděluje ho na několik portů x16 downstream. Porty downstream převyšují linku upstream; pokud všech osm GPU zatěžuje hostitele současně, sdílejí port x16 proti proudu.
Toto je architektura uvnitř základních desek HGX od NVIDIA (a systémů SXM, které Kentino nestaví). Funguje to, protože v dobře fungujících vícenásobných GPU úlohách je většina provozu mezi GPU (NVLink nebo PCIe peer-to-peer), nikoli mezi GPU a hostitelem. Upstream link přenáší váhy pouze v době načítání, občasných kontrolních bodů a úložných I/O operací. Inference jej nesaturuje; trénování většinou také ne, pokud kolektivy zůstávají mezi GPU.
Retimery jsou jiné: opakovače signálu, které umožňují spojení Gen5 vést po kabelu delším, než specifikace dovoluje. Nemění topologii – umožňují fyzicky dosáhnout zvolené topologie. Každé šasi EPYC s 8 GPU, které Kentino dodává, používá retimery, protože kabel vedoucí od základní desky k pozicám GPU přesahuje nativní dosah Gen5.
NVLink – co to je a kde to není
NVLink je proprietární propojení GPU-GPU od společnosti NVIDIA, nezávislé od PCIe. Využívá vyhrazenou sadu vysokorychlostních linek na okraji GPU (nebo prostřednictvím konektoru SXM či můstku NVLink) k zajištění přímého přístupu k paměti mezi GPU s mnohem vyšší šířkou pásma než PCIe.
| Propojit | Agregovaná šířka pásma | Karty, které to podporují (v roce 2026) |
|---|---|---|
| PCIe Gen5 x16 | 64 GB / s | Všechny aktuální grafické karty PCIe |
| Můstek NVLink 4 | 600 GB / s | Varianty A100, H100 PCIe (většinou vyřazené) |
| NVLink 5 (SXM) | 1800 GB / s | H100 SXM, H200, GB200, B200 — všechny pouze SXM |
| NVLink (Pro 6000 SXM) | N / A | RTX Pro 6000 Blackwell je PCIe, bez NVLinku |
Klíčový fakt pro jakoukoli stavbu lodí Kentino: Žádná z našich karet nemá NVLink. RTX 4090 ztratila konektor, který měla 3090. 5090 ho nemá. RTX Pro 6000 Blackwell (Workstation i Max-Q) je pouze PCIe. L40 a L4 také.
Nejde o přehlédnutí. NVIDIA si vyhrazuje NVLink pro grafické karty SXM pro datová centra a několik málo PCIe karet s můstkem NVLink – a ty se postupně vyřazují, protože high-endové produkty plně přecházejí na SXM. Pokud chcete NVLink, kupujete si HGX s moduly H100/H200/B200 za desetinásobnou cenu a Kentino to nevyrábí.
Bez NVLinku probíhají kolektivní komunikace mezi GPU (all-reduce, all-gather, reduce-scatter) přes PCIe peer-to-peer. Efektivní šířka pásma mezi dvěma kartami je omezena pomalejším z obou PCIe linek a jakýmkoli přepínačem nebo kořenovým portem, který se mezi nimi nachází. V systému EPYC s 8 GPU je P2P mezi GPU na stejném přepínači rychlý; P2P mezi kořenovými komplexy prochází přes CPU a je pomalejší.
Pro inferenci to téměř nikdy nevadí – inference je vázána na paměť lokálního GPU a dávkové aktivace procházejí GPU jen občas. Pro trénování s tenzorovým paralelismem je to největší důvod, proč sestavení EPYC 8×5090 není ekvivalentní uzlu HGX 8×H100, a to i v případě, že hrubé FLOPS vypadají srovnatelně.
Když se šířka pásma PCIe skutečně nasytí
| Pracovní zátěž | Nasycuje PCIe? | Poznámky |
|---|---|---|
| Inference pro jeden GPU (LLM, dávka 1) | Ne | Model je uložen ve VRAM; PCIe pouze pro tokeny |
| Inference pro jeden GPU (LLM, velká dávka) | Ne | Propustnost se s dávkou zvyšuje; PCIe stále nečinné |
| Inference vidění z jednoho GPU | Někdy | Pokud je napájení z paměti CPU, x8 je patrný |
| Inference z více GPU (paralelní tenzory) | Někdy | Aktivace napříč grafickými procesory v každé vrstvě |
| Inference z více GPU (paralelní zpracování kanálů) | Zřídka | Pouze aktivace na hranicích fází |
| Načítání modelu z NVMe / sítě | Ano | 140GB Llama-405B Q8 chce každý GB/s, který máte |
| Trénink, jeden GPU | Ne | Stejné jako inference |
| Trénink, více GPU, ZeRO-1/2 | Ano | Gradientní redukce kladivami propojuje odkaz |
| Trénink, více GPU, ZeRO-3 / FSDP | Ano, těžké | Parametr all-gather při každém kroku vpřed |
| Trénování, multi-GPU, tenzorový paralelní | Ano, těžké | Bez NVLinku je to nejhorší případ. |
Vzor je konzistentní: Inference nenasycuje PCIe; trénování ano. Pokud bude sestavení strávit svou životnost službou inferenci – což platí pro většinu kupujících – x8 Gen5 na kartu je v pořádku a můžete zabudovat více GPU do menšího topologického rozpočtu. Pokud trénujete, chcete, aby každá karta byla na x16 a GPU byly seskupené, aby kolektivy neprocházely nejpomalejší cestou.
Topologie pro sestavení se 4 GPU (EPYC Genoa, jeden socket)
Toto je standardní konfigurace Kentino se 4 GPU na AMD EPYC. Funguje také na Threadripper Pro 7000 WX se shodnou alokací linek.
4GPU EPYC: každá GPU má vyhrazené připojení x16 Gen5 přímo ke kořenovému komplexu CPU. Žádné přepínání, žádné přetížení.
Každá grafická karta (GPU) má plnohodnotné připojení x16 Gen5 přímo ke kořenovému komplexu CPU. Žádné rozdvojení, žádný přepínač, žádný retimer pro samotné GPU (rozšiřující karty mohou mít retimery stále v závislosti na rozložení šasi). P2P mezi libovolnými dvěma GPU prochází interní strukturou EPYC a je symetrické – všechny čtyři karty jsou z hlediska topologie stejně vzdálené.
Toto je nejčistší dostupná sestava s více grafickými kartami. Dodáváme ji pro 4× RTX 5090, 4× RTX 4090, 4× RTX Pro 6000 Blackwell a 4× L40.
Topologie pro sestavení s 8 GPU (EPYC Genoa / Turin, jeden socket)
128 linek nestačí k tomu, aby osm grafických karet mělo plnohodnotný x16 – to by spotřebovalo celý rozpočet a na NVMe nebo sítě by nezbylo nic. Standardní rozvržení jsou:
Možnost A: Všech 8 GPU na x16 s přepínací strukturou
x16
x16
x16
x16
x16
x16
x16
x16
Možnost A: dva PCIe přepínače, každý s jednou x16 pro upstream k CPU a čtyřmi x16 pro downstream GPU. P2P v rámci přepínače je rychlý; P2P mezi přepínači prochází CPU.
Každý přepínač se připojuje k CPU na portu x16 Gen5 a rozděluje čtyři porty x16 pro downstream. GPU 0–3 sdílejí jeden upstreamový port s rychlostí 64 GB/s k CPU; GPU 4–7 sdílejí další. P2P mezi GPU 0 a 1 je rychlé (stejný přepínač); P2P mezi GPU 0 a GPU 4 prochází kořenovým komplexem CPU a je pomalejší. Kentino s 8 GPU postavené na šasi Supermicro a Bone64c se řídí tímto modelem.
Možnost B: Všech 8 GPU v x8, přímo do CPU
Varianta B: 8 GPU na x8 přímo do CPU přes rozdvojení. Žádný přepínač, žádné překročení limitu, 32 GB/s na kartu. Pouze inferenční sestavení.
Žádný switch, žádné nadměrné předplatné, nižší latence CPU-GPU. Každá karta dosahuje rychlosti 32 GB/s místo 64. Pro inferenci je to neviditelné. Pro trénování za intenzivní kolektivní komunikace je to výrazně horší než varianta A – propojení na kartu je menší a neexistuje žádný rychlý P2P v rámci switche.
Výchozí sestavení Kentina s 8 GPU je varianta A (přepínaná struktura) pro systémy s možností trénování a varianta B (rozdvojená přímá síť) pro sestavení pouze s inferencí, kde je rozpočet na linky lépe využit na NVMe a duální 100GbE síťové karty.
Integrita signálu u Gen5
Gen5 je dostatečně rychlá, takže fyzická vrstva hraje roli tak, jak tomu nebylo u Gen3 nebo Gen4. Kabel Gen5 vede na standardní desce plošných spojů FR4 přibližně 7 palců, než se oko zavře. Kabel Gen5 vede přibližně 20 cm bez retimeru. To stačí pro slot sousedící s CPU; nestačí to pro rozšiřující kabel v 4U šasi vzdáleném 40 cm.
Co to znamená:
- Na stoupačkách záleží. Popruhy Gen4 nepropouštějí signály Gen5. Potřebujete popruhy s certifikací Gen5, obvykle s instalovaným časovačem. Rozdíl v ceně je skutečný – 80–150 EUR za popruh.
- Délka kabelu je pevně omezená. Nad 30 cm je potřeba retizer; nad 70 cm dva. Proto produkty s „externím GPU boxem“ u 5. generace ve skutečnosti neexistují.
-
Nespolehlivé spojení se tiše přepne na Gen4 nebo Gen3. Systém se spustí, grafická karta se zobrazí v
nvidia-smi, z toho vyplývá závěr. Šířka pásma je čtvrtina toho, za co jste zaplatili.nvidia-smi --query-gpu=pcie.link.gen.current,pcie.link.width.currentje první věc, kterou je třeba u nově postavené stavby zkontrolovat. - Na BIOSu záleží. Některé rackové základní desky Supermicro a ASRock jsou standardně nastaveny na automatickou rychlost připojení a volí konzervativně. Explicitně vynuťte Gen5 a potvrďte po spuštění.
Viděli jsme sestavení, kde jedna z osmi GPU trénovala na Gen3 x8 celé týdny, protože se nikdo nedíval. Úloha běžela. Byla 4× pomalejší, než měla být.
Kdy na topologii záleží a kdy ne
Většinou nezáleží na tom, jestli: Spouštíte inferenci na jednom GPU pro libovolnou velikost modelu; inferenci na více GPU s paralelismem replik (každá GPU spouští svou vlastní kopii); dávkovou inferenci ovládanou šířkou pásma VRAM; nebo načítáte modely jednou a zpracováváte je celé hodiny.
Hodně záleží, pokud: Trénujete multi-GPU s modelem rozděleným napříč kartami (tenzorovým nebo pipeline paralelním provozem); používáte FSDP nebo ZeRO-3, kde jsou parametry segmentovány a znovu shromažďovány v každém kroku; spouštíte RLHF nebo jiné úlohy s častou synchronizací gradientů; vyměňujete modely za chodu během provozu; nebo napájíte GPU ze vzdálené úložné vrstvy, kde PCIe tvoří trychtýř.
Pro většinu kupujících – inferenční servery pro obsluhu LLM/VLM, robotické backendy, hosting serverů s umělou inteligencí – je topologie problémem check-the-link, nikoli architektonickým. Pro ty hrstku, kteří se seriózně věnují školení s více GPU, je topologie (přepínaná vs. rozdvojená, NVLink vs. ne) architektonickým rozhodnutím, a proto je sestavení 8×5090 EPYC správným nástrojem pro některé školicí úlohy a špatným nástrojem pro jiné.
Co dělat dál
Pokud plánujete sestavu s více grafickými kartami, otázky, na které je třeba odpovědět před výběrem procesoru:
- Kolik GPU a s jakou šířkou jízdního pruhu? 4 × x16 se vejde na pracovní stanici; 8 × x16 vyžaduje EPYC + přepínače; 8 × x8 vyžaduje EPYC + bifurkaci.
- Inference nebo trénink? Pouze inference: x8 na GPU je v pořádku, ušetřete náklady na přepínač. Trénování s tenzorovým paralelním postupem: x16 a přepínač, tečka.
- Co dalšího potřebuje pruhy? 100GbE síťová karta vyžaduje x16. Čtyři U.2 NVMe disky potřebují x16. Naplánujte si to, než se rozhodnete.
- Jaký je tvůj příběh s podstavcem Gen5? Rozpočet 100 €/podnož, v případě potřeby ověřte schválení Gen5 s retimery. Viz. W03 pro detail stoupačky.
- Jsi si jistý, že NVLink nepotřebuješ? Pokud je vaše tréninková zátěž omezena na propojení, žádná topologie PCIe vás nezachrání. V tu chvíli se konverzace přesouvá k hardwaru třídy HGX – který Kentino nevyrábí. Lepší je vědět to předem, než až po instalaci do racku.
Poté, co je systém jednou sestaven a otestován, je topologie PCIe něco, na co se na tři roky zapomene. Okamžiky, kterým je třeba věnovat pozornost: první den (ověření rychlosti připojení každé grafické karty), po jakékoli aktualizaci BIOSu (reset nastavení trénování připojení), po jakémkoli fyzickém přepojení (vibrování kabelů, snížení frekvence připojení) a před jakýmkoli trénovacím spuštěním, které stojí skutečné peníze.
Toto je součást Kentino Wiki, referenční série o výpočetní technologii s využitím umělé inteligence, robotice a systémech, které je propojují. Komentáře a opravy jsou vítány na adrese info@kentino.com.