AMD MI300X, LLM çıkarımında NVIDIA H100’ü geride bıraktı
(blog.tensorwave.com)- TensorWave ve MK1’in Mixtral 8x7B çıkarım karşılaştırmasında MI300X+MK1 Flywheel kombinasyonu, gerçek sohbet kullanım senaryosu bazında H100 SXM+vLLM’ye göre %33 daha yüksek throughput gösterdi
- Testin odağında MoE modeli vardı; Mixtral 8x7B, 192GB VRAM’li tek bir MI300X’e sığarken 80GB VRAM’li H100 için iki kart ve tensor parallelism 2 gerekiyor
- Çevrim dışı batch çıkarımında tüm batch boyutlarında MI300X kombinasyonu öndeydi; performans farkı 1.22x~2.94x aralığında görüldü
- Çevrim içi sohbet dağılımı testi, ortalama 573 giriş token’ı ve 50 çıkış token’ı içeren istekler kullandı; ortalama 5 saniye gecikme hedefinde 2 MI300X, 2 H100’e göre saniye başına %33 daha fazla istek işledi
- TensorWave, yalnızca throughput değil maliyet rekabetçiliği ve donanım bulunabilirliği de dikkate alındığında MI300X’in bulutta büyük ölçekli çıkarım operasyonları için güçlü bir seçenek olabileceğini düşünüyor
Karşılaştırmanın özü: MoE çıkarımında MI300X H100’ü geçebilir mi?
- AMD’nin amiral gemisi hızlandırıcısı MI300X’in gerçek yapay zeka iş yüklerinde NVIDIA Hopper mimarisini geride bırakıp bırakamayacağı testin merkezinde yer alıyor
- TensorWave ve MK1, AMD donanımında yapay zeka çıkarım performansını ortaya çıkarmak için bir ay boyunca birlikte çalıştı
- İlk odak Mixture of Experts(MoE) mimarisiydi
- MoE, hesaplama verimliliği ve popülerliği nedeniyle seçildi
- Mistral, Meta, Databricks ve X.ai’nin güçlü açık kaynak LLM’lerinde kullanılan bir yapı olarak tanıtıldı
- MK1 çıkarım yazılımını kullanan MI300X, Mixtral 8x7B tabanlı gerçek sohbet kullanım senaryosunda H100 SXM ve vLLM kombinasyonuna göre %33 daha yüksek throughput elde etti
- TensorWave, NVIDIA’nın yazılım ekosisteminin daha olgun olduğunu kabul etmekle birlikte AMD’nin yapay zeka pazarında halihazırda güçlü bir rakip olduğunu değerlendiriyor
Benchmark yapılandırması
- Tüm benchmark’lar Mixtral 8x7B modeliyle yapıldı
- Çıkarım framework’lerinin tamamı FP16 hesaplama yolunu kullanacak şekilde ayarlandı
- FP8 hesaplamayı etkinleştirme gelecekteki çalışma olarak bırakıldı
- Farklı tensor parallelism ayarlarını karşılaştırmak için MI300X throughput’u 2 kat olarak ekstrapole edildi
-
AMD sistemi
- TensorWave düğümü 8 MI300X hızlandırıcı, 2 AMD EPYC CPU işlemci, toplam 192 çekirdek ve 2.3TB DDR5 RAM yapılandırmasıyla test edildi
- MI300X hızlandırıcı özellikleri şöyle
- 192GB VRAM
- 5.3TB/s
- FP16 yaklaşık 1300 TFLOPS
- Yazılım yapılandırması şöyle
- ROCm 6.1.2
- MK1 çıkarım motoru Flywheel v0.9.2
- AMD ROCm için optimize edilmiş vLLM fork’u rocm/vllm v0.4.0
- Mixtral 8x7B modelinin tamamı tek bir MI300X’in 192GB VRAM’ine sığdığı için tensor parallelism 1(tp=1) olarak ayarlandı
-
NVIDIA sistemi
- H100 sistemi, NVLink’li 8 H100 SXM5 hızlandırıcı, 160 CPU çekirdeği ve 1.2TB DDR5 RAM yapılandırmasıyla test edildi
- H100 SXM5 hızlandırıcı özellikleri şöyle
- 80GB VRAM
- 3.35TB/s
- FP16 yaklaşık 986 TFLOPS
- Yazılım yapılandırması şöyle
- CUDA 12.2
-
vLLM v4.3
- Mixtral 8x7B’yi H100 80GB VRAM’li iki karta sığdırmak için tensor parallelism 2(tp=2) olarak ayarlandı
Çevrim dışı çıkarım sonuçları
- Çevrim dışı test, sabit boyutlu prompt’lar oluşturarak bunları doğrudan modele verdi ve her çıkarım çözümünün maksimum throughput değerini ölçtü
- Çevrim dışı batching, donanım verimliliğini artırmak için birden fazla prompt’u aynı anda işler
- Batch boyutu büyüdükçe throughput artar
- Aynı anda daha fazla istek işlendiği için gecikme de artar
- Standart uygulamaya göre bir batch içindeki istekler aynı giriş boyutu ve aynı çıkış boyutuna sahip olacak şekilde sınırlandı
- Test, vLLM deposundaki
benchmark_throughput.pydeğiştirilerek yapıldı- Flywheel’i backend olarak içerecek şekilde yeniden düzenlendi
- Önbellekleme mekanizmasını ortadan kaldırmak için batch içindeki prompt’lar rastgele oluşturuldu
- MI300X ve MK1 Flywheel kombinasyonu, tüm batch boyutlarında H100 ve vLLM kombinasyonundan daha yüksek performans gösterdi
- Performans artışı 1.22x~2.94x aralığındaydı
Çevrim içi sohbet dağılımı testi
- Çevrim içi benchmark, gerçekçi bir genel sohbet uygulamasını simüle edecek şekilde tasarlandı
- Test, bağımsız worker’lar oluşturup endpoint’e istek göndermek ve worker sayısını artırarak eşzamanlı istek sayısını yükseltmek şeklinde yürütüldü
- İstekler standart metin sohbet dağılımı kullanılarak üretildi
- Ortalama giriş token’ı 573
- Ortalama çıkış token’ı 50
- Benchmark aracı rastgele veri dağılımlarını destekler
- Ölçülen metrikler üç tanedir
- Throughput: Verilen iş yükünde saniye başına işlenebilen istek sayısı
- Ortalama gecikme: Her isteğin tam yanıtını üretmek için geçen ortalama süre
- TPOT(Time Per Output Token): İlk token’dan sonra gelen her sonraki token’ı üretmenin ortalama süresi; uzun yanıt üretim hızını etkiler
-
Streaming olmayan sonuçlar
- İlk çevrim içi benchmark, streaming olmayan kullanım senaryosunu test etti
- Tüm yanıtı sunmak için gereken throughput ve gecikmeyi ölçtü
- Ortalama 5 saniye gecikme hedefinde 2 MI300X(tp=1), 2 H100(tp=2)’ye göre saniye başına %33 daha fazla istek işledi
- Aynı hizmet kalitesi düzeyiyle aynı kullanıcı sayısını karşılamak için daha az hızlandırıcı kullanılabilir
-
Streaming sonuçları
- İkinci çevrim içi benchmark, streaming’i etkinleştirdi ve token’lar stream edilirken throughput ile TPOT’yi ölçtü
- MI300X, tüm TPOT değerlerinde H100’den daha yüksek throughput gösterdi
- Daha yüksek trafik hacimlerinde de MI300X metni daha hızlı üretebilir
Sonuç ve dağıtım önerisi
- Benchmark sonuçlarında AMD MI300X, Mixtral 8x7B gibi MoE mimarilerinin çevrim dışı ve çevrim içi çıkarım işlerinde NVIDIA H100’den daha yüksek performans gösterdi
- Yüksek throughput’un yanı sıra hızlı yanıt süresi gerektiren gerçek senaryolarda da MI300X üstün sonuçlar verdi
- TensorWave, performans, maliyet rekabetçiliği ve donanım bulunabilirliği dikkate alındığında MK1 yazılımıyla birlikte kullanılan MI300X’in şirketlerin yapay zeka çıkarımını ölçeklendirmesi için uygun olduğunu öneriyor
- TensorWave, MI300X’i MK1 çıkarım yazılımıyla birlikte sunduğunu ve kullanıcıların doğrudan test edebileceğini belirtiyor
1 yorum
Hacker News yorumları
TensorWave’in yapay zeka iş yüklerine odaklanan bir bulut sağlayıcısı olması ve AMD Instinct MI300X kullanması düşünüldüğünde, bu rapora bir ölçüde temkinli yaklaşmak gerekiyor
Daha adil karşılaştırma 8x H100 NVL (188GB, <800W) olmalıydı
Fiyat da çok şey anlatıyor. AMD performansı Nvidia ile aynı seviyedeyse kartları 1/4 fiyatına satması için bir neden yok
2024’te neden hâlâ 128 giriş token’ı benchmark’ı yapıldığını anlamıyorum. Çoğu iş yükünü temsil etmiyor ve prefill performansı çok önemli
Gerçek sorguların daha kısa mı daha uzun mu olduğuna göre 128’in neden uygunsuz olduğu da değişir gibi
Bir kelimeyi bir token sayarsak, benim sorgularımın çoğu 128 kelimeden kısa
Bu kısmı iyimser görmek istiyorum. Bu alanda rekabet kesinlikle gerekli ve şu an $NVDA piyasa değeri anormal derecede büyük. Frankfurt Menkul Kıymetler Borsası’nın tamamından yaklaşık 0,6 trilyon dolar daha büyük
Lidl, Aldi gibi indirim market devleri ya da otomotiv parça üreticisi Bosch gibi varlıklı Almanların sahip olduğu borsaya kapalı dev şirketler de var
Nvidia meselesinin önümüzdeki birkaç ay ila birkaç yıl içinde kendiliğinden düzene girmesi kuvvetle muhtemel
Bir yapay zeka bilimcisi olarak çok sayıda model eğitiyorum; şahsen AMD’nin Nvidia’ya kıyasla düşük değerli olduğunu düşünüyorum
Çipleri Nvidia’nın en yeni ürünleri kadar hızlı değil ve çalıştırmak için aşılması gereken noktalar da var
Ancak çoğu sektördeki çoğu iş yükünde, yapay zekanın başlı başına sermayeyi iyi kullanma biçimi olup olmadığı tartışmasını bir kenara bırakırsak, AMD çok daha maliyet etkin ve neredeyse aynı sonuçları verebiliyor
Piyasa ve satış fiyatı, Nvidia çözümleri ile AMD çözümlerinin algılanan değerini yansıtıyor. Araçlar, yazılım, toplam sahip olma maliyeti ve yönetim kolaylığı da buna dahil
Ayrıca bu tür hızlandırıcıları bu kadar pahalıya alıp 8 tane 7B parametreli modeli paralel çalıştıracak kaç şirket olduğunu da merak ediyorum
Tek bir hızlandırıcıda 14B model eğitilebildiği de söyleniyor; 14B model eğitimi sonrası 4x14B iş yükünde çıkarım throughput’unun nasıl olduğu gibi “hızlandırıcının tamamını kullanan eğitim ve çıkarım” iş yüklerini görmek isterdim
AMD ve bugüne kadar çıkarım performansı iddiasında bulunan şirketlerin çoğu, özellikle Intel ve Apple, sadece kazanabilecekleri benchmark’ları seçip sundu ve Nvidia’nın önde olduğu geri kalanları görmezden geldi. Bu yazıda da birçok yorumun belirttiği gibi ara nesil bir karşılaştırma modeli kullanılıyor
Tek bir sistemde, yani 8 hızlandırıcılı LLM kurulumunda MI300X, H100’e karşı çıkarım toplam sahip olma maliyetinde çok rekabetçi
Microsoft’a göre AMD Instinct MI300X, GPT-4’te fiyat/performansı en iyi çözüm ve AMD 2027’ye kadar watt başına performansta 100 kat iyileşme hedefiyle ilerliyor
https://wccftech.com/amd-instinct-mi300x-best-price-performa...
https://www.techspot.com/news/102056-nvidia-allegedly-punish...
Bu tür hızlandırıcılara yönelik büyük siparişler aylar öncesinden veriliyor
Öte yandan Microsoft’un MI300X’lerinin tamamı şimdiden rezerve edilmiş durumda
https://techcommunity.microsoft.com/t5/azure-high-performanc...
“Bu VM’ler ve onları çalıştıran yazılım, Azure AI hizmetlerinin gerçek üretim iş yükleri için amaca yönelik olarak tasarlandı. Dünyanın en güçlü doğal dil modeli olan GPT-4 Turbo’yu da şimdiden bu VM’ler için optimize ettik. ND MI300X v5 VM, popüler OpenAI ve açık kaynak modellerinde lider maliyet performansı sunuyor.”
Tensor paralel yapılandırmasının performansı etkileyip etkilemediğini merak ediyorum. Saf bir tahminle evet, ama emin değilim.
Yazıya göre AMD yapılandırması, Mixtral 8x7B’nin tamamını tek bir MI300X’in 192 GB VRAM’ine sığdırabildiği için tensor paralelliği tp=1; NVIDIA yapılandırması ise iki H100’ün 80 GB VRAM’ine sığdırmak zorunda olduğundan tp=2 gerekiyor.
Yani VRAM sınırına sığan bir model kullanmak ve performansı artırdığı durumlarda 8 bit quantization uygulamak gibi, iki taraftaki cihazların dezavantajlarını gereksiz yere ortaya çıkarmamalı.
AMD’nin donanımı daha iyi görünüyor, ancak henüz Nvidia ile rekabet edecek üretim kapasitesi yok. Gerçek rekabet yakaladığında marjların daralma süreci ilginç olacak.
Herkes Nvidia hâkimiyetinin nedeninin CUDA olduğunu düşünüyor, ama öyle değil. Bu yılki gelirin neredeyse %40’ı, GPU ile etkileşen kendi özel yığınlarını kullanan hiper ölçekli şirketlerden geliyor.
Rakiplerin yetişip daha ucuz GPU sunması sadece zaman meselesi.
CUDA platformu ile insanların
.cudosyalarına yazdığı C/C++ benzeri dili karıştırıyor gibi görünüyor.Bazılarının doğrudan
.cudosyası yazmadığı doğru, ancaknvcc, PTX, SASS, runtime, driver gibi geri kalan CUDA yığınını pas geçen hiçbir yer yok.Ben de o “hiper ölçekli şirketlerden” birinde çalışıyorum. İnanmıyorsanız PyTorch’ta ne kadar CUDA kernel’i olduğuna bakın: https://github.com/pytorch/pytorch/tree/main/aten/src/ATen/n...
Nvidia’yı baskın kılan şey %100 CUDA’dır.
TSMC’nin ABD’de ya da AB’de de bazı fabrikalarda üretime başlamış olması gerek diye düşünüyorum.
Nvidia da TSMC kullanıyor, AMD de TSMC kullanıyor.
AMD için iyi bir başlangıç. Nvidia dışında başka bir inference seçeneği olan Groq da ilgimi çekiyor ve ara sıra kullanıyorum.
Nvidia üretimde TSMC’ye bağımlı. Samsung’un rakip bir üretim altyapısı kuruyor olması da iyi; böylece Taiwan tek hata noktası olmaktan çıkıyor.
Uygun istatistiksel metrikler olmadan, özellikle yaygın kullanılan 95. persentil yerine ortalama kullanılıyorsa ve watt başına performans da yoksa, işe yaramaz bir karşılaştırma.
95. persentil de olsa iyi olurdu.
INT8/FP8 benchmark’ları da olsaydı iyi olurdu. Her iki kart da H100’de tp=2 kullanmadan, modeli yaklaşık 60 GB VRAM ile yükleyebilirdi.