ICD: Difference between revisions
Appearance
Created page with "Dalam OpenCL, ICD merupakan singkatan dari Installable Client Driver. Ini adalah sebuah mekanisme standar yang memungkinkan berbagai implementasi OpenCL dari vendor perangkat keras yang berbeda untuk berjalan bersamaan dalam satu sistem operasi. == Arsitektur ICD == Sistem ICD membagi ekosistem OpenCL menjadi dua komponen utama yang saling bekerja sama: * '''ICD Loader (Pemuat ICD):''' Ini adalah pustaka pusat (berupa file {{code|libOpenCL.so}} di Linux atau {{code|Op..." |
No edit summary |
||
| Line 1: | Line 1: | ||
== Arsitektur ICD == | == Arsitektur ICD == | ||
Sistem ICD membagi ekosistem OpenCL menjadi dua komponen utama yang saling bekerja sama: | Sistem ICD membagi ekosistem OpenCL menjadi dua komponen utama yang saling bekerja sama: | ||
* '''ICD Loader (Pemuat ICD):''' Ini adalah pustaka pusat (berupa file | * '''ICD Loader (Pemuat ICD):''' Ini adalah pustaka pusat (berupa file <code>libOpenCL.so</code> di Linux atau <code>OpenCL.dll</code> di Windows) yang dihubungkan langsung ke aplikasi. ICD Loader bertindak seperti "polisi lalu lintas" yang mendeteksi semua driver vendor yang ada di komputer, lalu mengarahkan perintah OpenCL dari aplikasi ke driver perangkat keras yang sesuai. | ||
* '''Vendor ICD (Driver Vendor):''' Ini adalah driver komputasi nyata yang disediakan langsung oleh produsen perangkat keras (seperti AMD, NVIDIA, Intel, atau proyek sumber terbuka seperti PoCL) untuk menjalankan perintah pada chip buatan mereka. | * '''Vendor ICD (Driver Vendor):''' Ini adalah driver komputasi nyata yang disediakan langsung oleh produsen perangkat keras (seperti AMD, NVIDIA, Intel, atau proyek sumber terbuka seperti PoCL) untuk menjalankan perintah pada chip buatan mereka. | ||
| Line 12: | Line 10: | ||
Saat aplikasi OpenCL dijalankan, ICD Loader akan memindai sistem untuk mencari tahu perangkat keras apa saja yang tersedia melalui jalur khusus: | Saat aplikasi OpenCL dijalankan, ICD Loader akan memindai sistem untuk mencari tahu perangkat keras apa saja yang tersedia melalui jalur khusus: | ||
* '''Pada Sistem Linux / Unix:''' Loader akan membaca direktori | * '''Pada Sistem Linux / Unix:''' Loader akan membaca direktori <code>/etc/OpenCL/vendors</code>. Di dalam folder ini, vendor menaruh file teks sederhana berakhiran <code>.icd</code> (contohnya <code>nvidia.icd</code>). Isi file tersebut hanyalah satu baris teks yang mengarah ke lokasi file pustaka (<code>.so</code>) driver asli mereka. | ||
* '''Pada Sistem Windows:''' Loader akan memeriksa Windows Registry pada jalur khusus, seperti: | * '''Pada Sistem Windows:''' Loader akan memeriksa Windows Registry pada jalur khusus, seperti: | ||
: | : <code>HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors</code> | ||
: Setiap vendor yang terpasang akan membuat entri registrasi yang mengarah ke file driver ( | : Setiap vendor yang terpasang akan membuat entri registrasi yang mengarah ke file driver (<code>.dll</code>) mereka. | ||
== Manfaat Utama ICD == | == Manfaat Utama ICD == | ||
Latest revision as of 04:27, 15 June 2026
Arsitektur ICD
Sistem ICD membagi ekosistem OpenCL menjadi dua komponen utama yang saling bekerja sama:
- ICD Loader (Pemuat ICD): Ini adalah pustaka pusat (berupa file
libOpenCL.sodi Linux atauOpenCL.dlldi Windows) yang dihubungkan langsung ke aplikasi. ICD Loader bertindak seperti "polisi lalu lintas" yang mendeteksi semua driver vendor yang ada di komputer, lalu mengarahkan perintah OpenCL dari aplikasi ke driver perangkat keras yang sesuai. - Vendor ICD (Driver Vendor): Ini adalah driver komputasi nyata yang disediakan langsung oleh produsen perangkat keras (seperti AMD, NVIDIA, Intel, atau proyek sumber terbuka seperti PoCL) untuk menjalankan perintah pada chip buatan mereka.
Cara ICD Menemukan Driver (Registrasi)
Saat aplikasi OpenCL dijalankan, ICD Loader akan memindai sistem untuk mencari tahu perangkat keras apa saja yang tersedia melalui jalur khusus:
- Pada Sistem Linux / Unix: Loader akan membaca direktori
/etc/OpenCL/vendors. Di dalam folder ini, vendor menaruh file teks sederhana berakhiran.icd(contohnyanvidia.icd). Isi file tersebut hanyalah satu baris teks yang mengarah ke lokasi file pustaka (.so) driver asli mereka. - Pada Sistem Windows: Loader akan memeriksa Windows Registry pada jalur khusus, seperti:
HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors- Setiap vendor yang terpasang akan membuat entri registrasi yang mengarah ke file driver (
.dll) mereka.
Manfaat Utama ICD
- Independensi Vendor: Pengembang perangkat lunak cukup membuat program satu kali. Program tersebut akan langsung mendukung kartu grafis atau prosesor dari merek apa pun tanpa perlu dirombak ulang.
- Komputasi Heterogen: Memungkinkan aplikasi membagi beban kerja komputasi secara bersamaan ke berbagai perangkat keras yang berbeda, misalnya memproses data menggunakan CPU Intel dan GPU NVIDIA secara serentak.
- Peralihan Otomatis (Fallback): Jika sebuah komputer tidak memiliki kartu grafis eksternal yang kuat, aplikasi tetap bisa berjalan dengan beralih secara otomatis ke prosesor utama atau kartu grafis bawaan (integrated) yang terdeteksi oleh ICD Loader.