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
- Tinjauan fitur dan arsitektur ROCm dan HIP
- ROCm untuk Windows vs ROCm untuk Linux
Pemasangan
- Menginstal ROCm di Windows
- Memverifikasi pemasangan dan memeriksa kompatibilitas perangkat
- Memperbarui atau menghapus ROCm di Windows
- Mengatasi masalah pemasangan yang umum
Memulai
- Membuat proyek ROCm baru menggunakan Visual Studio Code di Windows
- Menjelajahi struktur dan file proyek
- Mengompilasi dan menjalankan program
- Menampilkan output menggunakan printf dan fprintf
API ROCm
- Menggunakan API ROCm di program host
- Meminta informasi dan keterampilan perangkat
- Mengalokasikan dan membebaskan memori perangkat
- Mengkopi data antara host dan perangkat
- Meluncurkan kernel dan menyinkronkan thread
- Mengelola kesalahan dan pengecualian
Bahasa HIP
- Menggunakan bahasa HIP di program perangkat
- Menulis kernel yang dieksekusi di GPU dan memanipulasi data
- Menggunakan jenis data, kualifikasi, operator, dan ekspresi
- Menggunakan fungsi, variabel, dan perpustakaan bawaan
Model Memori ROCm dan HIP
- Menggunakan ruang memori yang berbeda, seperti global, shared, constant, dan local
- Menggunakan objek memori yang berbeda, seperti pointer, array, textures, dan surfaces
- Menggunakan mode akses memori yang berbeda, seperti read-only, write-only, read-write, dll.
- Menggunakan model konsistensi memori dan mekanisme sinkronisasi
Model Eksekusi ROCm dan HIP
- Menggunakan model eksekusi yang berbeda, seperti threads, blocks, dan grids
- Menggunakan fungsi thread, seperti hipThreadIdx_x, hipBlockIdx_x, hipBlockDim_x, dll.
- Menggunakan fungsi block, seperti __syncthreads, __threadfence_block, dll.
- Menggunakan fungsi grid, seperti hipGridDim_x, hipGridSync, cooperative groups, dll.
Pemecahan Masalah
- Memecahkan masalah program ROCm dan HIP di Windows
- Menggunakan debugger Visual Studio Code untuk memeriksa variabel, breakpoint, call stack, dll.
- Menggunakan ROCm Debugger untuk memecahkan masalah program ROCm dan HIP di perangkat AMD
- Menggunakan ROCm Profiler untuk menganalisis program ROCm dan HIP di perangkat AMD
Optimasi
- Mengoptimalkan program ROCm dan HIP di Windows
- Menggunakan teknik coalescing untuk meningkatkan throughput memori
- Menggunakan teknik caching dan prefetching untuk mengurangi latensi memori
- Menggunakan teknik memori shared dan local untuk mengoptimalkan akses dan lebar pita memori
- Menggunakan profil dan alat profil untuk mengukur dan meningkatkan waktu eksekusi dan pemakaian sumber daya
Ringkasan dan Langkah Selanjutnya
Persyaratan
- Pahaman tentang bahasa C/C++ dan konsep pemrograman paralel
- Pengetahuan dasar tentang arsitektur komputer dan hierarki memori
- Pengalaman dengan alat baris perintah dan editor kode
- Kenalan dengan sistem operasi Windows dan PowerShell
Audience
- Pengembang yang ingin mempelajari cara memasang dan menggunakan ROCm di Windows untuk memprogram GPU AMD dan memanfaatkan paralelism-nya
- Pengembang yang ingin menulis kode berkinerja tinggi dan dapat di skalakan yang dapat berjalan di berbagai perangkat AMD
- Programmer yang ingin mengungkap aspek tingkat rendah pemrograman GPU dan mengoptimalkan kinerja kode-nya
21 Jam