AMD MI300X Mengungguli NVIDIA H100 dalam Inferensi LLM
(blog.tensorwave.com)- Dalam perbandingan inferensi Mixtral 8x7B oleh TensorWave dan MK1, kombinasi MI300X+MK1 Flywheel menunjukkan throughput 33% lebih tinggi dibanding H100 SXM+vLLM pada kasus penggunaan chat nyata
- Inti pengujian adalah model MoE; Mixtral 8x7B dapat dimuat dalam satu MI300X dengan VRAM 192GB, sedangkan H100 dengan VRAM 80GB memerlukan dua unit dan tensor parallelism 2
- Pada inferensi batch offline, kombinasi MI300X unggul di semua ukuran batch, dengan selisih performa berada di kisaran 1,22x~2,94x
- Pengujian distribusi chat online menggunakan permintaan dengan rata-rata 573 token input dan 50 token output; pada target latensi rata-rata 5 detik, 2 MI300X memproses 33% lebih banyak permintaan per detik dibanding 2 H100
- TensorWave menilai bahwa jika mempertimbangkan bukan hanya throughput, tetapi juga daya saing biaya dan ketersediaan hardware, MI300X dapat menjadi opsi kuat untuk operasi inferensi skala besar di cloud
Inti perbandingan: bisakah MI300X mengungguli H100 dalam inferensi MoE
- Fokus pengujian adalah apakah akselerator flagship AMD, MI300X, dapat mengungguli arsitektur NVIDIA Hopper pada workload AI nyata
- TensorWave dan MK1 bekerja sama selama satu bulan untuk memaksimalkan performa inferensi AI pada hardware AMD
- Fokus awalnya adalah arsitektur Mixture of Experts(MoE)
- MoE dipilih karena efisiensi komputasi dan popularitasnya
- Arsitektur ini diperkenalkan sebagai struktur yang digunakan pada LLM open-source kuat dari Mistral, Meta, Databricks, dan X.ai
- MI300X yang menggunakan software inferensi MK1 mencapai throughput 33% lebih tinggi dibanding kombinasi H100 SXM dan vLLM pada kasus penggunaan chat nyata berbasis Mixtral 8x7B
- TensorWave mengakui bahwa ekosistem software NVIDIA lebih matang, tetapi menilai AMD sudah menjadi pesaing kuat di pasar AI
Konfigurasi benchmark
- Semua benchmark dilakukan dengan model Mixtral 8x7B
- Semua framework inferensi dikonfigurasi untuk menggunakan jalur komputasi FP16
- Aktivasi komputasi FP8 masih menjadi pekerjaan ke depan
- Untuk membandingkan konfigurasi tensor parallelism yang berbeda, throughput MI300X diekstrapolasi 2 kali lipat
-
Sistem AMD
- Node TensorWave diuji dengan konfigurasi 8 akselerator MI300X, 2 prosesor CPU AMD EPYC, total 192 core, dan RAM DDR5 2,3TB
- Spesifikasi akselerator MI300X adalah sebagai berikut
- VRAM 192GB
- 5,3TB/s
- FP16 sekitar 1300 TFLOPS
- Konfigurasi software adalah sebagai berikut
- ROCm 6.1.2
- Mesin inferensi MK1 Flywheel v0.9.2
- Fork vLLM teroptimasi AMD ROCm rocm/vllm v0.4.0
- Karena seluruh model Mixtral 8x7B muat dalam VRAM 192GB pada satu MI300X, tensor parallelism ditetapkan ke 1(tp=1)
-
Sistem NVIDIA
- Sistem H100 diuji dengan konfigurasi 8 akselerator H100 SXM5 dengan NVLink, 160 core CPU, dan RAM DDR5 1,2TB
- Spesifikasi akselerator H100 SXM5 adalah sebagai berikut
- VRAM 80GB
- 3,35TB/s
- FP16 sekitar 986 TFLOPS
- Konfigurasi software adalah sebagai berikut
- CUDA 12.2
-
vLLM v4.3
- Untuk menyesuaikan Mixtral 8x7B ke dalam dua H100 dengan VRAM 80GB, tensor parallelism ditetapkan ke 2(tp=2)
Hasil inferensi offline
- Pengujian offline menghasilkan prompt berukuran tetap, mengirimkannya langsung ke model, dan mengukur throughput maksimum dari tiap solusi inferensi
- Batching offline meningkatkan efisiensi hardware dengan memproses beberapa prompt secara bersamaan
- Ketika ukuran batch membesar, throughput meningkat
- Karena lebih banyak permintaan diproses sekaligus, latensi juga meningkat
- Sesuai praktik standar, permintaan dalam satu batch dibatasi agar memiliki ukuran input dan ukuran output yang sama
- Pengujian dilakukan dengan memodifikasi
benchmark_throughput.pydari repositori vLLM- Direfaktor agar menyertakan Flywheel sebagai backend
- Prompt dalam batch dibuat secara acak untuk menghilangkan mekanisme caching
- Kombinasi MI300X dan MK1 Flywheel menunjukkan performa lebih tinggi dibanding kombinasi H100 dan vLLM di semua ukuran batch
- Peningkatan performanya berada di kisaran 1,22x~2,94x
Pengujian distribusi chat online
- Benchmark online dirancang untuk menyimulasikan aplikasi chat umum yang realistis
- Pengujian dilakukan dengan membuat worker independen yang mengirim permintaan ke endpoint, lalu meningkatkan jumlah worker untuk menambah jumlah permintaan bersamaan
- Permintaan dibuat menggunakan distribusi chat teks standar
- Rata-rata token input adalah 573
- Rata-rata token output adalah 50
- Tool benchmark mendukung distribusi data arbitrer
- Metrik yang diukur ada tiga
- Throughput: jumlah permintaan per detik yang dapat diproses pada workload tertentu
- Latensi rata-rata: waktu rata-rata yang diperlukan untuk menghasilkan respons penuh untuk tiap permintaan
- TPOT(Time Per Output Token): waktu rata-rata untuk menghasilkan setiap token lanjutan setelah token pertama, yang memengaruhi kecepatan pembuatan respons panjang
-
Hasil non-streaming
- Benchmark online pertama menguji kasus penggunaan non-streaming
- Benchmark ini mengukur throughput dan latensi yang diperlukan untuk menyediakan respons penuh
- Pada target latensi rata-rata 5 detik, 2 MI300X(tp=1) memproses 33% lebih banyak permintaan per detik dibanding 2 H100(tp=2)
- Dengan tingkat kualitas layanan yang sama, jumlah pengguna yang sama dapat dilayani dengan lebih sedikit akselerator
-
Hasil streaming
- Benchmark online kedua mengaktifkan streaming dan mengukur throughput serta TPOT saat token di-streaming
- MI300X menunjukkan throughput lebih tinggi dibanding H100 pada semua nilai TPOT
- Bahkan pada volume trafik yang lebih tinggi, MI300X dapat menghasilkan teks lebih cepat
Kesimpulan dan saran deployment
- Dari hasil benchmark, AMD MI300X menunjukkan performa lebih tinggi dibanding NVIDIA H100 dalam pekerjaan inferensi offline dan online untuk arsitektur MoE seperti Mixtral 8x7B
- MI300X juga memberikan hasil yang unggul dalam skenario nyata yang membutuhkan bukan hanya throughput tinggi, tetapi juga waktu respons cepat
- TensorWave menyarankan bahwa, dengan mempertimbangkan performa, daya saing biaya, dan ketersediaan hardware, MI300X yang digunakan bersama software MK1 cocok untuk penskalaan inferensi AI perusahaan
- TensorWave menyediakan MI300X bersama software inferensi MK1 dan menyatakan pengguna dapat mengujinya secara langsung
1 komentar
Komentar Hacker News
Mengingat TensorWave adalah penyedia cloud yang khusus menangani workload AI dan menggunakan AMD Instinct MI300X, laporan ini memang perlu disaring sampai taraf tertentu
Perbandingan yang lebih adil seharusnya adalah 8x H100 NVL (188GB, <800W)
Harga juga banyak bicara. Jika performa AMD setara dengan Nvidia, tidak ada alasan menjual kartunya dengan harga seperempatnya
Saya tidak paham kenapa pada 2024 masih ada benchmark 128 token input. Itu tidak mewakili sebagian besar workload, dan performa prefill sangat penting
Kenapa 128 dianggap tidak tepat tampaknya juga bergantung pada apakah kueri nyata cenderung lebih pendek atau lebih panjang
Jika satu kata dianggap satu token, dalam kasus saya sebagian besar kueri lebih pendek dari 128 kata
Saya mencoba melihat bagian ini secara optimistis. Bidang ini sangat membutuhkan persaingan, dan saat ini kapitalisasi pasar $NVDA terlalu besar secara tidak normal. Nilainya sekitar 0,6 triliun dolar lebih besar daripada seluruh Bursa Efek Frankfurt
Ada juga raksasa swasta yang dimiliki orang-orang kaya Jerman, seperti jaringan ritel diskon Lidl dan Aldi atau pemasok otomotif Bosch
Masalah Nvidia kemungkinan akan terkoreksi dengan sendirinya dalam beberapa bulan hingga beberapa tahun ke depan
Sebagai ilmuwan AI yang banyak melatih model, saya pribadi melihat AMD dinilai terlalu rendah dibanding Nvidia
Chipnya memang tidak secepat produk terbaru Nvidia dan masih ada beberapa hambatan untuk menjalankannya
Tetapi untuk sebagian besar workload di sebagian besar industri, terlepas dari apakah AI sendiri adalah penggunaan modal yang efisien, AMD jauh lebih hemat biaya dan bisa menghasilkan keluaran yang hampir sama
Pasar dan harga jual mencerminkan nilai yang dipersepsikan dari solusi Nvidia dan AMD. Ini mencakup tool, software, total cost of ownership, dan kemudahan pengelolaan
Saya juga penasaran berapa banyak perusahaan yang akan membeli akselerator semahal itu lalu menjalankan 8 model berparameter 7B secara paralel
Ada juga pembicaraan bahwa model 14B bisa dilatih di satu akselerator, jadi saya ingin melihat workload “pelatihan dan inferensi yang memakai seluruh akselerator”, misalnya bagaimana throughput inferensi pada workload 4x14B setelah melatih model 14B
AMD dan sebagian besar vendor lain yang selama ini mengklaim performa inferensi, terutama Intel dan Apple, cenderung hanya memilih benchmark yang bisa mereka menangkan dan mengabaikan sisanya yang dimenangkan Nvidia. Seperti ditunjukkan beberapa komentar di sini, tulisan ini juga memakai model pembanding dari generasi antara
Untuk LLM dalam satu sistem, yaitu konfigurasi 8 akselerator, MI300X sangat kompetitif dari sisi total cost of ownership inferensi dibanding H100
Menurut Microsoft, AMD Instinct MI300X menawarkan price-performance terbaik untuk GPT-4, dan AMD menargetkan peningkatan performa per watt hingga 100x pada 2027
https://wccftech.com/amd-instinct-mi300x-best-price-performa...
https://www.techspot.com/news/102056-nvidia-allegedly-punish...
Pesanan massal akselerator seperti ini biasanya masuk beberapa bulan sebelumnya
Sementara itu, MI300X milik Microsoft sudah habis dipesan
https://techcommunity.microsoft.com/t5/azure-high-performanc...
“VM ini dan software yang menjalankannya dibuat khusus untuk workload produksi nyata pada layanan Azure AI. Kami juga telah mengoptimalkan GPT-4 Turbo, model bahasa alami paling kuat di dunia, untuk VM ini. VM ND MI300X v5 menawarkan cost performance terdepan pada model OpenAI populer maupun model open-source.”
Saya penasaran apakah pengaturan paralelisme tensor memengaruhi performa. Dugaan naif saya iya, tetapi saya tidak yakin
Menurut artikel itu, konfigurasi AMD bisa memuat seluruh Mixtral 8x7B dalam 192GB VRAM pada 1 MI300X sehingga paralelisme tensor tp=1, sedangkan konfigurasi NVIDIA harus memuatnya di 2 H100 dengan VRAM 80GB sehingga memerlukan tp=2
Artinya memakai model yang muat dalam batas VRAM, dan jika performa membaik maka menerapkan kuantisasi 8-bit, sehingga kekurangan kedua perangkat tidak terekspos secara tidak perlu
AMD tampak punya perangkat keras yang lebih baik, tetapi mereka masih belum punya kapasitas produksi untuk bersaing dengan Nvidia. Akan menarik melihat bagaimana margin menyusut jika persaingan sungguhan mulai terjadi
Semua orang mengira penyebab dominasi Nvidia adalah CUDA, tetapi bukan itu. Hampir 40% pendapatan tahun ini datang dari perusahaan-perusahaan raksasa yang memakai stack kustom mereka sendiri untuk berinteraksi dengan GPU
Hanya tinggal menunggu waktu sampai pesaing menyusul dan menawarkan GPU yang lebih murah
Sepertinya ada kebingungan antara platform CUDA dan bahasa mirip C/C++ yang ditulis orang di file
.cuMemang benar sebagian orang tidak menulis file
.cusecara langsung, tetapi tidak ada yang melewati sisa stack CUDA sepertinvcc, PTX, SASS, runtime, dan driverSaya juga bekerja di salah satu “perusahaan raksasa” itu. Kalau tidak percaya, lihat saja berapa banyak kernel CUDA di PyTorch: https://github.com/pytorch/pytorch/tree/main/aten/src/ATen/n...
Yang membuat Nvidia dominan adalah CUDA, 100%
Setahu saya TSMC juga sudah mulai memproduksi sebagian chip di pabrik AS atau UE
Nvidia memakai TSMC dan AMD juga memakai TSMC
Ini awal yang bagus bagi AMD. Saya juga tertarik dan kadang memakai Groq, opsi inferensi lain selain Nvidia
Nvidia bergantung pada TSMC untuk manufaktur. Fakta bahwa Samsung juga sedang membangun infrastruktur manufaktur yang kompetitif juga hal yang baik, karena itu mencegah Taiwan menjadi single point of failure
Tanpa metrik statistik yang tepat, terutama jika memakai rata-rata alih-alih persentil ke-95 yang lazim digunakan, dan tanpa performa per watt, ini perbandingan yang tidak berguna
Akan bagus juga kalau ada persentil ke-95
Akan lebih baik kalau ada juga benchmark INT8/FP8. Pada kedua kartu, model itu kemungkinan bisa dimuat dalam sekitar 60GB VRAM di H100 tanpa harus memakai tp=2