Teknik Penyilangan FFMA SASS DeepGEMM Memberikan Peningkatan Prestasi Melebihi 10% untuk Operasi Matriks FP8

BigGo Editorial Team
Teknik Penyilangan FFMA SASS DeepGEMM Memberikan Peningkatan Prestasi Melebihi 10% untuk Operasi Matriks FP8

Perpustakaan DeepGEMM yang baru dikeluarkan oleh DeepSeek AI telah menarik perhatian komuniti teknikal dengan teknik pengoptimuman inovatifnya untuk operasi matriks FP8. Walaupun perpustakaan ini menawarkan beberapa peningkatan prestasi untuk Pendaraban Matriks Umum (GEMMs), teknik penyilangan FFMA SASS yang telah mengagumkan pakar-pakar teknikal, memberikan peningkatan prestasi melebihi 10% dalam beberapa kes.

Keajaiban Di Sebalik Penyilangan FFMA SASS

Pasukan DeepGEMM menemui peningkatan prestasi dalam kernel CUTLASS FP8 antara versi pengkompil NVCC 12.2 dan 12.3. Melalui analisis teliti kod SASS (Streaming Assembly) yang dikompilasi, mereka mengenal pasti bahawa bit tertentu dalam arahan FADD sedang ditukar dalam corak penyilangan. Bit ini mengawal fungsi yield, yang pada dasarnya membolehkan warp semasa untuk menyerahkan pelaksanaan, berpotensi meningkatkan keselarian peringkat warp dengan membenarkan warp lain bekerja.

Berdasarkan penemuan ini, pasukan tersebut membangunkan skrip untuk mengubah suai arahan FFMA (Fused Floating-point Multiply-Add) dalam binari yang dikompilasi. Mereka bukan sahaja memanipulasi bit yield tetapi juga menukar bit penggunaan semula, kerana daftar tidak boleh digunakan semula jika warp diserahkan. Pengubahsuaian kecil ini mewujudkan lebih banyak peluang untuk bertindih arahan Matrix Multiply-Accumulate (MMA) dengan arahan promosi FFMA, menghasilkan peningkatan prestasi yang ketara.

Saya boleh katakan ini benar-benar mengagumkan.

Pengoptimuman Khusus untuk Infrastruktur AI Kritikal

Perbincangan komuniti menekankan bahawa walaupun pengoptimuman prestasi seperti ini adalah tipikal dalam matematik matriks apabila prestasi adalah kritikal, ia belum digunakan secara meluas untuk masalah khusus ini oleh syarikat-syarikat AI lain. Seperti yang dinyatakan oleh seorang pengulas, kebanyakan pemain AI bergantung pada operasi GEMM berprestasi tinggi tetapi biasanya memilih implementasi standard seperti CUTLASS atau cuBLAS daripada memanfaatkan ciri-ciri yang tidak didokumentasikan.

Tahap pengoptimuman ini menunjukkan sejauh mana syarikat-syarikat AI sanggup pergi untuk mendapatkan setiap sedikit prestasi daripada kelompok GPU yang mahal. Bahkan peningkatan prestasi sebanyak 10% boleh diterjemahkan kepada penjimatan kos yang ketara apabila beroperasi pada skala besar. Seperti yang dinyatakan dalam perbincangan, keuntungan sedemikian berpotensi membayar gaji ramai orang apabila syarikat-syarikat melabur ratusan juta dalam infrastruktur GPU.

Ciri-ciri Utama dan Keperluan DeepGEMM

  • Peningkatan Prestasi: Sehingga 2.7x lebih pantas berbanding pelaksanaan CUTLASS 3.6 yang telah dioptimumkan

  • Teknik-teknik Pengoptimuman:

    • Pengkhususan warp berterusan
    • Ciri-ciri TMA (Tensor Memory Accelerator) Hopper
    • Penjadual blok bersepadu dengan rasterisasi
    • Reka bentuk JIT sepenuhnya
    • Saiz blok tidak sejajar
    • Penyilangan SASS FFMA
  • Keperluan Perkakasan:

    • GPU seni bina Hopper dengan sokongan sm_90a
    • Python 3.8+
    • CUDA 12.3+ (12.8+ disyorkan)
    • PyTorch 2.1+
    • CUTLASS 3.6+

Kesan Industri dan Kebolehcapaian

Pelepasan sumber terbuka DeepGEMM kelihatan diposisikan secara strategik untuk memberi manfaat kepada industri secara keseluruhan, terutamanya pembekal yang lebih besar yang menyediakan model AI. Perpustakaan ini memerlukan GPU seni bina Hopper (dengan sokongan sm_90a) dan direka khusus untuk senario seperti yang terdapat dalam DeepSeek-V3, menyokong kedua-dua GEMM normal dan GEMM berkumpulan Mix-of-Experts (MoE).

Beberapa ahli komuniti telah cuba menguji perpustakaan ini pada perkakasan pengguna seperti RTX 5080, menghadapi batasan berkaitan dengan kapasiti memori bersama. Perpustakaan ini direka secara khusus untuk teras tensor NVIDIA Hopper, menjadikannya terutamanya relevan untuk infrastruktur AI peringkat perusahaan dan bukannya aplikasi pengguna.

Kedalaman teknikal DeepGEMM menyerlahkan pengoptimuman infrastruktur AI yang semakin canggih. Ketika model AI terus berkembang dalam saiz dan kerumitan, pengoptimuman yang kelihatan kecil pada tahap arahan perkakasan menjadi semakin berharga bagi organisasi yang menolak sempadan kemungkinan dengan perkakasan semasa.

Rujukan: DeepGEMM: clean and efficient FP8 GEMM kernels with fine-grained scaling