Terima kasih telah mengirimkan pertanyaan Anda! Salah satu anggota tim kami akan segera menghubungi Anda.
Terima kasih telah mengirimkan pemesanan Anda! Salah satu anggota tim kami akan segera menghubungi Anda.
Kerangka Materi
Pendahuluan
- Apa itu ROCm?
- Apa itu HIP?
- ROCm vs CUDA vs OpenCL
- Gambaran umum fitur dan arsitektur ROCm serta HIP.
- Perbedaan antara ROCm untuk Windows dan ROCm untuk Linux.
Penginstalan
- Cara menginstal ROCm pada Windows.
- Mengesahkan instalasi dan memverifikasi kompatibilitas perangkat.
- Memperbarui atau menghapus instalasi ROCm di Windows.
- Mengatasi masalah umum selama proses penginstalan.
Pemulaan
- Cara membuat proyek ROCm baru menggunakan Visual Studio Code di Windows.
- Memahami struktur dan file dalam suatu proyek.
- Mengkompilasi serta menjalankan program yang dibuat.
- Menampilkan hasil eksekusi via fungsi printf dan fprintf.
API ROCm
- Penerapan API ROCm dalam kode host.
- Mencari informasi dan kemampuan perangkat GPU.
- Mengalokasikan serta melepaskan memori perangkat GPU.
- Memindahkan data antara host dan perangkat GPU.
- Menjalankan kernel serta menyelaraskan eksekusi antar thread.
- Pengelolaan error dan penanganan ekssepsi.
Bahasa HIP
- Menggunakan bahasa HIP dalam pengembangan kode perangkat GPU.
- Membuat kernel yang mampu mengeksekusi di GPU sekaligus memproses data.
- Pemanfaatan tipe data, modifier, operator, serta ekspresi terkait HIP.
- Penerapan fungsi bawaan, variabel, dan library khusus HIP.
Model Memori ROCm & HIP
- Penggunaan berbagai tipe ruang memori seperti global, shared, constant, serta local.
- Kepemilikan objek memori seperti pointer, array, texture, dan surface.
- Penerapan modus akses memori termasuk read-only, write-only, atau read-write.
- Pemanfaatan model konsistensi memori serta mekanisme sinkronisasi antar proses.
Model Eksekusi ROCm & HIP
- Definisi berbagai level eksekusi: thread, blok, dan grid.
- Penerapan fungsi dasar seperti hipThreadIdx_x, hipBlockIdx_x, hipBlockDim_x.
- Pemanfaatan utilitas antar blok seperti __syncthreads serta __threadfence_block.
- Kontrol eksekusi lebih lanjut dengan alat grid seperti hipGridDim_x, hipGridSync, dan cooperative groups.
Debugging
- Pelaksanaan debugging program ROCm & HIP di lingkungan Windows.
- Menggunakan debugger Visual Studio Code untuk melacak variabel, breakpoint, dan call stack.
- Menerapkan ROCm Debugger dalam analisis error kode di perangkat AMD.
- Memanfaatkan alat ROCm Profiler guna evaluasi performa program pada GPU AMD.
Optimisasi
- Peningkatan efisiensi program ROCm & HIP dalam konteks Windows.
- Manfaat teknik koalesensi untuk meningkatkan aliran memori ke GPU.
- Penerapan caching dan prefetching demi reduksi latensi akses memori.
- Pemanfaatan shared memory serta local memory dalam pengoptimalan efisiensi transfer dan bandwidth.
- Analisis kinerja dengan tools profiling guna penilaian waktu eksekusi serta utilitas sumber daya perangkat.
Penutup & Langkah Selanjutnya
Persyaratan
- Pemahaman terhadap bahasa C/C++ serta konsep pemrograman paralel
- Pengetahuan dasar tentang arsitektur komputer dan hierarki memori
- Pengalaman dalam menggunakan alat perintah baris (command-line tools) dan editor kode
- Kebiasaan mengoperasikan sistem operasi Windows serta PowerShell
Target Peserta
- Para developer yang ingin mempelajari cara menginstal dan menggunakan ROCm di Windows guna program GPU AMD serta memaksimalkan sifat paralelnya.
- Pengembang yang hendak menciptakan kode berperforma tinggi dan dapat skala dengan mudah pada berbagai perangkat AMD.
- Programmer yang ingin mendalami aspek teknis pemrograman GPU serta mengoptimalkan performa aplikasinya.
21 Jam