AMD diam-diam mendukung implementasi CUDA berbasis ROCm dan merilisnya sebagai open source
- AMD telah berupaya selama bertahun-tahun agar para pengembang dapat menjalankan codebase yang menargetkan API CUDA milik NVIDIA di atas HIP/ROCm.
- Terlepas dari upaya tersebut, jika mengejar performa terbaik, itu bukan solusi yang baik (sederhana, langsung, dan dengan performa yang terjamin).
- Selama dua tahun terakhir, AMD diam-diam mendukung sebuah proyek yang menyediakan kompatibilitas biner pada level library agar banyak aplikasi NVIDIA CUDA dapat berjalan di atas stack AMD ROCm tanpa perubahan source code.
ZLUDA: dukungan CUDA untuk grafis Intel
- Beberapa tahun lalu, proyek bernama ZLUDA dimulai untuk mendukung CUDA pada grafis Intel, tetapi dihentikan karena alasan pribadi.
- Pengembang ZLUDA, Andrzej Janik, menerima kontrak dari AMD pada tahun 2022 untuk menerapkan ZLUDA pada GPU AMD menggunakan HIP/ROCm.
- Selama dua tahun terakhir, Janik telah mengimplementasikan ZLUDA pada GPU Radeon sehingga banyak software CUDA dapat berjalan di HIP/ROCm tanpa modifikasi.
Perilisan open source ZLUDA
- AMD memutuskan untuk menghentikan pendanaan proyek ini tahun ini dan tidak merilisnya sebagai produk software.
- Namun, saat kontrak berakhir ada klausul yang memungkinkan Janik merilis hasil kerjanya sebagai open source.
- Janik menyediakan akses untuk menguji dan menjalankan benchmark terhadap implementasi ZLUDA baru ini.
Keterbatasan implementasi ZLUDA dan kode open source
- Implementasi ZLUDA tidak 100% aman, misalnya dukungan untuk NVIDIA OptiX belum lengkap dan software yang tidak menggunakan kode assembly PTX saat ini belum ditangani.
- Dalam banyak kasus, implementasi ini sangat mengesankan untuk sebuah upaya dari satu orang pengembang.
- Kode open source tersedia dengan lisensi ganda Apache 2.0 atau MIT.
- Bahasa pemrograman Rust digunakan untuk implementasi Radeon ini.
Opini GN⁺
- Artikel ini memperkenalkan proyek yang diam-diam didukung AMD untuk menyediakan kompatibilitas CUDA, dan ini dapat menjadi kontribusi besar bagi komunitas open source.
- ZLUDA merupakan kemajuan penting yang memungkinkan para pengembang menjalankan aplikasi CUDA di platform AMD tanpa harus mengubah source code.
- Upaya seperti ini memberi pengguna GPU AMD kesempatan untuk mengakses ekosistem software yang lebih luas, dan penggunaan bahasa pemrograman modern seperti Rust juga menarik.
2 komentar
Nvidia, brengsek!
Opini Hacker News
ZLUDA dirilis sebagai open source sebagai akibat AMD menghentikan pendanaan
Penyebutan tentang CUDA Dark API
Opini yang mendukung AMD untuk mematahkan monopoli CUDA
Pengalaman mencoba menjalankan Stable Diffusion di GPU AMD dan kesulitan yang dihadapi
Beberapa tahun setelah Blender meninggalkan OpenCL dan memakai backend CUDA, backend Radeon HIP ditambahkan, tetapi ternyata penggunaan ZLUDA + backend CUDA sedikit lebih cepat daripada backend Radeon HIP.
Keputusan AMD menghentikan pendanaan untuk proyek ini tampak sulit dipahami.
Pertanyaan terkait kabar bahwa Nvidia melewati pemeriksaan driver berlisensi GPL milik kernel
Panduan bagi mereka yang ingin mengompilasi sendiri stack ROCm/HIP AMD diperkenalkan dalam artikel Phoronix.
ROCm dijelaskan lebih baik di Github daripada di dokumentasi resminya, dan ini menekankan pentingnya branding sebagai salah satu alasan AMD kehilangan daya saing di pasar.
Ada pendapat bahwa AMD seharusnya menugaskan lebih banyak tim untuk proyek ini.