3 poin oleh GN⁺ 2025-11-16 | Belum ada komentar. | Bagikan ke WhatsApp
  • HipKittens adalah proyek yang menyediakan kernel berperforma tinggi dan primitif pemrograman berbasis C++ untuk GPU AMD guna meningkatkan efisiensi komputasi AI
  • Komponen yang ada di ekosistem AMD seperti AITER, PyTorch, Triton, TileLang, Composable Kernel memperlihatkan keterbatasan karena performa yang tidak stabil dan dukungan yang belum matang
  • HipKittens berpusat pada abstraksi berbasis tile (tile abstraction), dengan antarmuka bersama antara NVIDIA dan AMD tetap dipertahankan sambil memisahkan implementasi per perangkat keras
  • Kernel yang ditulis dengan kurang lebih 500 baris kode atau kurang mencapai performa yang lebih cepat daripada kernel assembly AMD buatan tangan yang sudah ada
  • Proyek ini menawarkan landasan praktis untuk memperluas komputasi AI ke lingkungan multi-silikon serta menunjukkan kemungkinan transisi menuju ekosistem perangkat keras terbuka

Kondisi dan masalah dalam ekosistem GPU AMD

  • Komputasi AI hingga kini berkembang dengan fokus pada satu vendor perangkat keras, tetapi GPU AMD menawarkan performa komputasi tingkat tertinggi dan bandwidth memori sangat besar pada generasi terbaru
    • Contoh: AMD MI355X OAM memiliki BF16 2.5 PFLOPs, MXFP8 5.0 PFLOPs, memori 288GB, bandwidth 8.0TB/s
  • Namun, karena belum adanya software stack yang matang, performa ini tidak dapat dimanfaatkan sepenuhnya dalam workflow AI nyata
  • Komponen perangkat lunak utama AMD mencakup AITER, PyTorch, Triton, Mojo, TileLang, Composable Kernel (CK) dan lainnya
    • Kernel backpropagation SDPA Llama GQA milik AITER dan PyTorch masing-masing hanya mencapai 30% dan 24% dari performa SoTA
    • Mojo tertahan di sekitar 50% performa akibat bank conflict
    • TileLang hanya mendukung hingga CDNA3, dan kurangnya fitur inti serta ketergantungan pada CK menambah kompleksitas
    • Triton mengalami kesulitan dalam pelacakan masa hidup register dan optimasi akses memori
  • Akibatnya, kernel AMD dengan performa tertinggi masih harus ditulis langsung dalam assembly oleh para ahli, yang menjadi kendala besar untuk skalabilitas dan pemeliharaan

Perbandingan dengan ekosistem yang berpusat pada CUDA

  • Di komunitas AI, sering dinilai ada hambatan masuk ekosistem CUDA (CUDA moat)
  • Di masa lalu, pengembangan kernel NVIDIA juga membutuhkan bertahun-tahun upaya berbasis CUDA/CUTLASS level rendah
  • Belakangan, perkembangan DSL (bahasa spesifik domain) dan alat bantu berbasis AI telah menyederhanakan pengembangan kernel NVIDIA
    • Contoh: ThunderKittens (TK), CuTe DSL, TinyGrad “tinykittens”, TileLang, Gluon dan lainnya
  • Berdasarkan tren ini, di AMD juga mulai dieksplorasi kebutuhan akan primitif pemrograman baru

Prinsip desain HipKittens

  • HipKittens adalah versi yang dikembangkan untuk AMD, menyusul ThunderKittens (NVIDIA) dan ThunderMittens (Apple Silicon)
  • Konsep inti: abstraksi berbasis tile (tile abstraction)
    1. Generalisasi abstraksi tile – model komputasi berbasis tile yang efektif di NVIDIA juga dapat diterapkan secara alami di AMD
    2. Implementasi backend yang spesifik terhadap arsitektur – pola akses memori dan penjadwalan register dirancang berbeda untuk tiap perangkat keras
    3. Adaptivitas strategi penjadwalan – pada AMD CDNA3·CDNA4, penjadwalan berbasis wave tidak efisien, tetapi penjadwalan per tile tetap mempertahankan kesederhanaan dan performa
  • Dengan memisahkan antarmuka (tile dan operasi) dari implementasi (pemetaan ke perangkat keras), HipKittens menawarkan model yang dapat diterapkan secara umum ke berbagai arsitektur GPU

Hasil performa

  • Kernel Attention Forward: ditulis dengan sekitar 500 baris kode, dan mencapai performa lebih baik daripada kernel assembly AITER
    • Unggul pada berbagai dimensi head (D) dan panjang sekuens (N), baik dalam konfigurasi Causal maupun Non-Causal
  • Kernel GEMM: terdiri dari loop inti kurang dari 100 baris, dan mencapai performa terbaik untuk komputasi BF16 maupun FP8
  • Peningkatan dibanding performa terbaik sebelumnya juga terkonfirmasi pada kernel Attention Backward, Rotary, dan Fused Dropout-Residual-LayerNorm
  • Semua kernel tetap menjaga keterbacaan dan kemudahan modifikasi sambil memperoleh performa setara assembly buatan tangan

Ekspansi menuju AI multi-silikon

  • Untuk mewujudkan potensi AI, diperlukan pemanfaatan perangkat keras yang beragam dan terbuka
  • HipKittens bertujuan menjadikan GPU AMD sebagai platform yang benar-benar dapat diakses oleh pengembang AI
  • Dikombinasikan dengan software stack open source milik AMD, proyek ini menunjukkan kemungkinan transisi menuju ekosistem AI berbasis multi-silikon
  • Tulisan lanjutan akan membahas detail struktur teknis HipKittens (pratinjau part two)

Belum ada komentar.

Belum ada komentar.