Projek ZLUDA Menggandakan Pasukan Pembangunan dan Mencapai Kemajuan Besar dalam Memecah Eksklusiviti CUDA NVIDIA

Pasukan Editorial BigGo
Projek ZLUDA Menggandakan Pasukan Pembangunan dan Mencapai Kemajuan Besar dalam Memecah Eksklusiviti CUDA NVIDIA

Projek sumber terbuka ZLUDA , yang bertujuan untuk menjalankan kod CUDA NVIDIA pada GPU bukan- NVIDIA , telah mengalami kebangkitan yang ketara selepas hampir ditutup tahun lalu. Teknologi lapisan terjemahan ini mewakili satu penemuan yang berpotensi dalam memecahkan halangan eksklusiviti perkakasan yang telah lama mendominasi pengkomputeran GPU , terutamanya dalam beban kerja AI .

Pengembangan Pasukan Pembangunan Mempercepatkan Kemajuan

Perkembangan paling ketara bagi ZLUDA ialah pengembangan pasukan pembangunan terasnya daripada satu kepada dua pembangun sepenuh masa. Pembangun kedua, yang dikenali sebagai Violet , menyertai projek ini kurang daripada sebulan yang lalu tetapi telah membuat sumbangan yang besar, terutamanya dalam memajukan sokongan untuk beban kerja model bahasa yang besar. Penggandaan sumber pembangunan ini telah segera diterjemahkan kepada kemajuan yang lebih pantas merentasi pelbagai bidang, daripada pembaikan pepijat kepada pelaksanaan ciri baharu.

Pertumbuhan Pasukan Pembangunan:

  • Saiz pasukan sebelumnya: 1 pembangun sepenuh masa
  • Saiz pasukan semasa: 2 pembangun sepenuh masa
  • Pembangun baharu ( Violet ) menyertai: Kurang daripada 1 bulan yang lalu
  • Bidang tumpuan: Beban kerja LLM, sokongan PhysX, penambahbaikan ketepatan

Penemuan dalam Ujian Keserasian LLM

Pembangun ZLUDA telah bekerja secara intensif mengenai keserasian dengan llm.c , sebuah projek ujian yang cuba menjalankan model GPT-2 menggunakan CUDA . Ini mewakili kali pertama ZLUDA menangani kedua-dua fungsi CUDA standard dan perpustakaan khusus seperti cuBLAS secara serentak. Program ujian membuat 8,186 panggilan berasingan kepada fungsi CUDA merentasi 44 API yang berbeza. Walaupun percubaan awal mengakibatkan ranap serta-merta, penambahbaikan terkini telah membolehkan sistem berjaya memproses 552 panggilan sebelum gagal. Pasukan telah melengkapkan sokongan untuk 16 daripada 44 fungsi yang diperlukan, menandakan kemajuan yang besar ke arah keserasian penuh.

Kemajuan Ujian ZLUDA LLM.c:

  • Jumlah panggilan fungsi CUDA: 8,186
  • Bilangan API yang berbeza: 44
  • Panggilan yang berjaya diproses: 552 (sebelum kegagalan)
  • Sokongan fungsi yang lengkap: 16 daripada 44 fungsi yang diperlukan

Ketepatan yang Dipertingkatkan Melalui Ujian yang Ketat

Pelaksanaan ZLUDA semasa telah membuat langkah besar dalam mencapai pelaksanaan yang tepat bit merentasi seni bina GPU yang berbeza. Pasukan pembangunan kini menggunakan ujian 'sweep' PTX , yang secara sistematik mengesahkan bahawa setiap arahan dan kombinasi pengubahsuai menghasilkan keputusan yang sama dengan perkakasan NVIDIA . Proses pengesahan yang ketat ini telah mendedahkan dan menyelesaikan beberapa kecacatan pengkompil, memastikan bahawa arahan kompleks seperti arahan cvt kini memberikan keputusan yang tepat bit.

Penambahbaikan Teknikal:

  • Pelaksanaan eksekusi tepat-bit
  • Ujian 'sweep' PTX untuk pengesahan arahan
  • Sistem log yang dipertingkatkan untuk tangkapan aktiviti yang lebih luas
  • Pembetulan keserasian ROCm/HIP v6.4
  • Pembangunan sokongan PhysX 32-bit (dalam proses)

Kemajuan pada Sokongan Permainan Warisan

Kerja telah dimulakan untuk membolehkan sokongan PhysX 32-bit, yang penting untuk keserasian dengan permainan berasaskan CUDA yang lebih lama. Seorang penyumbang komuniti memulakan usaha ini dengan mengumpulkan log CUDA yang terperinci, yang mendedahkan beberapa pepijat yang boleh memberi kesan kepada kedua-dua fungsi CUDA 32-bit dan 64-bit. Walaupun sokongan PhysX 32-bit penuh masih memerlukan sumbangan komuniti tambahan, isu yang dikenal pasti telah ditambahkan kepada peta jalan pembangunan rasmi.

Penambahbaikan Logging dan Keserasian Runtime

Sistem logging ZLUDA telah menerima naik taraf yang menyeluruh, kini menangkap julat aktiviti GPU yang lebih luas yang sebelum ini tidak kelihatan. Logging yang dipertingkatkan termasuk jejak terperinci tingkah laku dalaman, seperti interaksi cuBLAS dengan cuBLASLt dan komunikasi cuDNN dengan API Pemandu peringkat rendah. Selain itu, pasukan telah menyelesaikan isu keserasian dengan versi ROCm/HIP 6.4 AMD , yang memperkenalkan perubahan antara muka binari aplikasi yang ketara yang menyebabkan ZLUDA memanggil operasi yang salah.

Implikasi yang Lebih Luas untuk Pengkomputeran GPU

Kemajuan projek ZLUDA berpotensi membentuk semula landskap pengkomputeran GPU dengan memecahkan monopoli berkesan NVIDIA pada aplikasi berasaskan CUDA . Dengan CUDA NVIDIA kekal sebahagian besarnya tidak boleh diakses oleh pengilang GPU lain dan AMD memberi tumpuan kepada tindanan ROCm nya, ZLUDA boleh berfungsi sebagai jambatan penting antara ekosistem perkakasan yang berbeza. Kejayaan dalam usaha ini akan membolehkan penyelidik dan pembangun AI memanfaatkan perkakasan daripada pelbagai vendor tanpa dikunci ke dalam ekosistem NVIDIA , berpotensi memacu inovasi dan persaingan dalam pasaran GPU .