
Samenvatting
Wie onze ontwikkeling tot nu toe heeft gevolgd, weet dat Paiton zich volledig richt op inferentieoptimalisatie voor AMD. Ons recentste werk tilt DeepSeek R1 Distill Llama 8B naar een hoger niveau, met 10 tot 15% meer throughput, een betere time-to-first-token (TTFT) en stabielere prestaties bij kleinere batchgroottes. Vooral op dat laatste vlak was nog winst te boeken.
- Belangrijkste winst: 10 tot 15% meer requests/s en tokenthroughput dan standaard-vLLM bij batchgrootte 32.
- Lagere TTFT: ~12,95% snellere gemiddelde TTFT, cruciaal voor gebruikersgerichte scenario's zoals chatbots.
- Nieuwe benchmarktool: onze eigen aanpak om prestaties over meerdere AMD MI300 GPU's te orkestreren en te meten, met betrouwbare resultaten uit de praktijk.
Kortom, Paiton benut de ruwe rekenkracht van AMD-hardware nog beter en verkleint zo de prestatiekloof in een markt waarin NVIDIA-oplossingen vaak de meeste aandacht krijgen.
DeepSeek R1 Distill Llama 8B-optimalisatie: het volgende hoofdstuk met Paiton en AMD
Waarom DeepSeek R1 Distill Llama 8B opnieuw bezoeken?
- Gerichte winst: onze aanvankelijke optimalisaties waren sterk bij hogere batchgroottes, maar lagere batchgroottes lieten ruimte voor verbetering zien.
- Bredere impact in de praktijk: veel gebruikers werken in productie met kleine of middelgrote batches, bijvoorbeeld 16 tot 128. Daarom wilden we de prestaties over het volledige bereik verbeteren.
- Stapsgewijze vooruitgang: voortbouwend op onze eerdere blogpost A First Look at Paiton in Action verfijnen we die kernels nu verder voor een nog sterkere voorsprong.
Hoe we de efficiëntie nog verder hebben verbeterd
- GEMM-optimalisaties
- We hebben matrixvermenigvuldigingen gestroomlijnd (GEMM) om de overhead te beperken, wat cruciaal is voor transformers.
- We combineren geheugentoegang, beperken de latency bij het starten van kernels en benutten AMD's HBM efficiënter.
- Verfijnde kerneluitvoering
- Door concurrencyhotspots te analyseren, hebben we bepaalde GPU-kernels samengevoegd of anders geordend om inactieve cycli tot een minimum te beperken.
- Vooral gericht op batchgrootte 32, een veel voorkomende gelijktijdigheidsinstelling in de echte wereld voor LLM-inferentie.
- Focus op kleinere batchgroottes
- We hebben inefficiënties bij kleine batchgroottes geïdentificeerd. Nieuwe codepaden verwerken die efficiënter en verbeteren zowel de TTFT als de algemene throughput.
Pro-tip: zie onze blogpost AI Model Optimization with Paiton voor een overzicht van de bredere verbeteringen die we hebben doorgevoerd.
Benchmarkopstelling en methodologie
- Hardwareomgeving
- AMD MI300X GPU's in ons onderzoeksdatacentrum.
- Poort en concurrency worden via de online modus van vLLM beheerd om realistische serving-scenario's na te bootsen.
- Serving- en benchmarktools
- vLLM (Stock) met:
- CUDA Graph ingeschakeld, terwijl we Triton uitschakelen voor Flash Attention.
num_sched_promptsverhoogd voor gelijktijdigheid.VLLM_USE_TRITON_FLASH_ATTN=0voor betere stabiliteit en prestaties.
- Paiton geïntegreerd in vLLM voor een rechtstreekse vergelijking onder identieke omstandigheden.
- Onze nieuwe benchmarktool:
- Gebouwd op dstack om gelijktijdig gebruik door meerdere ontwikkelaars te orkestreren.
- Controleert de beschikbaarheid van GPU's en voorkomt resourceconflicten.
- Genereert een gestandaardiseerde tabel met metrics, waaronder requests/s, TTFT en E2E-latency.
- vLLM (Stock) met:
- Primaire metrics:
- We leggen de nadruk op requests/s en outputtokens/s, belangrijke metrics voor realtime of bijna-realtime inferentie.
- Time-to-First-Token (TTFT) is ook van cruciaal belang voor de gebruikerservaring.
Hier tonen we onze benchmarktool in actie. De frontend is niet bepaald een meesterwerk, want hij is gebouwd door onze backend-engineer, maar hij doet wat hij moet doen.
Belangrijkste resultaten: Stock vLLM tegenover Paiton
Hieronder vindt u een verkorte versie van onze benchmarktabel met batchgrootte = 32, een uitstekende omgeving voor veel implementaties in de echte wereld:
| Metric | Paiton-vLLM DeepSeek-R1-Distill-Llama-8B | Stock-vLLM DeepSeek-R1-Distill-Llama-8B | % verbetering |
| Succesvolle verzoeken | 32 | 32 | 0,00% |
| Duur (s) | 4,91 | 5,43 | 9,58% |
| Requestthroughput (req/s) | 6,51 | 5,89 | 10,53% |
| Outputtokenthroughput (tok/s) | 1342,99 | 1214,81 | 10,55% |
| Totale tokendoorvoer (tok/s) | 2655,85 | 2402,36 | 10,55% |
| Gemiddelde TTFT (ms) | 164,74 | 189,25 | 12,95% |
| p99 TTFT (ms) | 234,75 | 247,38 | 5,11% |
| Gemiddelde TPOT (ms) | 8,48 | 9,88 | 14,17% |
| p99 TPOT | 30,16 | 30,81 | 2,11% |
| Gemiddelde ITL (ms) | 6,61 | 7,30 | 9,45% |
| p99 ITL | 17,42 | 18,79 | 7,29% |
| Gemiddelde E2EL (ms) | 1521,17 | 1687,78 | 9,87% |
| p99 E2EL | 4852,22 | 5370,83 | 9,66% |
Hoogtepunten:
- Throughput stijgt met 10 tot 15%.
- Gemiddelde TTFT ~13% sneller.
- De totale tokendoorvoer is consistent hoger, wat betekent dat zowel invoer- als uitvoertokens sneller worden verwerkt.
Voor een volledig overzicht van batchgroottes van 16 tot 256, zie de onderstaande grafiek of onze onbewerkte logboeken in het volgende bericht.
Requests tegenover end-to-end latency
Deze grafiek vergelijkt throughput met E2E-latency voor batchgroottes van 16 tot 256, een bereik dat vaak in productie wordt gebruikt. Paiton verschuift de curve consequent naar boven en naar links en levert dus meer throughput bij een lagere latency.
Gebruiksscenario's uit de praktijk
- Chatbots en Q&A: een snellere TTFT is cruciaal voor de gebruikerstevredenheid. Een eerste token dat ongeveer 13% sneller verschijnt, kan het verschil maken tussen een responsieve en een trage ervaring.
- Deployments met middelgrote batches: veel bedrijfsworkloads gebruiken voor concurrency batchgroottes van ongeveer 32 tot 128. De nieuwe verbeteringen van Paiton richten zich precies op die sweet spot.
- Latencygevoelige inferentie: de E2E-latency daalt aanzienlijk, met een gemiddeld E2EL-resultaat dat ongeveer 9,87% beter is. Zo blijven bijna-realtime antwoorden mogelijk, ook onder matige belasting.
Wat is het volgende?
- Verder dan LLaMA: we willen deze optimalisaties aanpassen voor andere belangrijke LLM-families en zetten de eerste stappen richting beeld- en videogeneratie.
- Tensorparallelisme: volwaardige multi-GPU-ondersteuning staat op onze roadmap. Paiton zal inferentie met grote modellen naadloos over meerdere AMD GPU's verdelen.
- Kwantisering: het minimaliseren van de precisie terwijl de nauwkeurigheid behouden blijft, zal de latenties verder verkleinen en het gebruik van een bepaald populair model mogelijk maken..
Zoals we graag zeggen: “We komen eraan, en we blijven optimaliseren!” We blijven onophoudelijk verfijnen, optimaliseren en herdefiniëren wat mogelijk is op AMD GPU's.
Conclusie
Paiton blijft evolueren. DeepSeek R1 Distill Llama 8B toont hoe sterk AMD-hardware kan presteren wanneer ze wordt gecombineerd met zorgvuldig verfijnde software. De nieuwe resultaten laten bij belangrijke batchgroottes verbeteringen van 10 tot 15% zien, met consistente winst in throughput, latency en metrics op tokenniveau.
Blijf op de hoogte terwijl we deze optimalisaties uitbreiden naar meer LLM-families en modellen voor beeld- en videogeneratie. Hebt u een specifiek verzoek of wilt u de resultaten bij nog grotere batchgroottes zien, laat het ons weten. We gaan er graag dieper op in.
Aanvullende details zullen verschijnen in onze komende diepgaande post, waarin we ons concentreren op hoe dstack plus onze aangepaste benchmarktool het testen en benchmarken door meerdere ontwikkelaars probleemloos orkestreren.
Bedankt voor het lezen en tot ziens bij de volgende optimalisatie-update!
Het Paiton-team
