1 puan yazan GN⁺ 2024-06-14 | 1 yorum | WhatsApp'ta paylaş
  • 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.py değ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

 
GN⁺ 2024-06-14
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

    • Standart AMD tarzı bir karşılaştırma yapılıyor: 8x AMD MI300X (192GB, 750W) ile 8x H100 SXM5 (80GB, 700W) karşılaştırılıyor
      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
    • Benchmark’ı tam olarak nasıl çalıştırdıklarını belirtmiş olmaları olumlu. Donanım varsa yeniden üretip çürütmek ya da doğrulamak kolay
    • Nvidia çipleri kullansalardı bu blog yazısı daha iyi olur muydu, pek emin değilim
  • 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

    • Uygun giriş uzunluğunun ne kadar olduğunu düşündüğünü merak ediyorum
      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

    • Frankfurt Menkul Kıymetler Borsası’nın değeri daha çok fazla küçük tarafta. Avrupalı geliştiricilerin aynı işi yapmalarına rağmen neden ABD’dekilerden daha düşük ücret aldıklarını sürekli merak ediyorum; nedeni tam da bu
    • Frankfurt Menkul Kıymetler Borsası ya da DAX genel olarak pek anlamlı değil. Almanya’da güçlü, aile sahipliğinde çok sayıda Mittelstand şirketi var ve bunlar borsaya açık değil
      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
    • Şu anda LLM balonunun tam ortasındayız
      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

    • MI300X bazı çıkarım iş yüklerinde kazanıyor, H100 ise eğitimde ve bazı başka çıkarım iş yüklerinde kazanıyor. Örneğin TensorRT-LLM kullanan FP8 çıkarımda H100 güçlü; ROCm ise hâlâ genç ama hızla büyü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...
    • Piyasa ve satış fiyatına satış stratejisi de dahildir. Güçlü bir oyuncunun hâkim olduğu ve bir ölçüde “akıllı” satış stratejileri kullandığı bir alana girmek için, daha düşük olgunluktaki ürünlerin, özellikle de yazılımı daha az olgun ürünlerin buna uygun fiyatlandırma ve kapasite tahsisi stratejisine ihtiyacı olur
      https://www.techspot.com/news/102056-nvidia-allegedly-punish...
    • MI300X üretim hacmi artıyor. Son finansal sonuçlar açıklamasında Lisa Su, 2024’ün ilk yarısında üretim kısıtları olduğunu, ancak ikinci yarıda üretim hacminin arttığını ve hâlâ satılabilir kapasite bulunduğunu söyledi. Bunun CoWoS ve HBM3/HBM3E tedarikindeki iyileşme sayesinde olması muhtemel
      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.

    • Bu tür bir karşılaştırmanın kişisel olarak adil olmadığını düşünüyorum. İyi bir karşılaştırma, her cihaz yapılandırmasına göre optimize edilmeli.
      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.

    • “GPU ile etkileşen kendi özel yığınları” ifadesi neredeyse tamamen uydurma gibi.
      CUDA platformu ile insanların .cu dosyalarına yazdığı C/C++ benzeri dili karıştırıyor gibi görünüyor.
      Bazılarının doğrudan .cu dosyası yazmadığı doğru, ancak nvcc, 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.
    • CUDA’sız bir yığının ne olduğunu biraz daha açıklayabilir misiniz ya da kaynak verebilir misiniz, merak ediyorum.
    • Üretim kapasitesi sonuçta TSMC ya da az sayıdaki rakibiyle pazarlık meselesi.
      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.

    • Ayrıca fiyat/performans da gerekli. Sonuçta kilit nokta bu.
    • Ortalama, throughput’u daha iyi anlatan bir metrik değil mi diye düşünüyorum.
      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.