Kembali ke Kursus
AI022 Profesional

Panduan Pemrograman AMD HIP

Panduan teknis komprehensif untuk Heterogeneous-compute Interface for Portability (HIP). Menyediakan C++ Runtime API dan bahasa kernel yang memungkinkan pengembang membuat aplikasi portabel untuk GPU AMD dan NVIDIA dari satu kode sumber. Panduan ini mencakup instalasi, konfigurasi lingkungan, model pemrograman, alokasi memori, serta alat untuk mengonversi kode CUDA ke HIP.

4.9
12.0h
841 siswa
4 lessons
0 suka
Kecerdasan Buatan
Mulai Belajar

Gambaran Umum Kursus

📚 Ringkasan Konten

Panduan teknis komprehensif untuk Heterogeneous-compute Interface for Portability (HIP). Panduan ini menyediakan API Runtime C++ dan bahasa kernel yang memungkinkan pengembang membuat aplikasi portabel untuk GPU AMD dan NVIDIA dari satu kode sumber. Panduan ini mencakup instalasi, konfigurasi lingkungan, model pemrograman, alokasi memori, serta alat untuk menyesuaikan kode CUDA ke HIP.

Kelola pemrograman GPU portabel: Satu kode sumber untuk platform AMD dan NVIDIA.

Penulis: Advanced Micro Devices, Inc. (AMD)

Ucapan Terima Kasih: AMD, logo AMD Arrow, AMD Instinct, Radeon, ROCm, dan kombinasi-kombinasinya adalah merek dagang milik Advanced Micro Devices, Inc. Linux adalah merek dagang terdaftar dari Linus Torvalds. PCIe adalah merek dagang terdaftar dari PCI-SIG Corporation.

🎯 Tujuan Pembelajaran

  1. Menjelaskan fitur utama dan nilai tambah dari kerangka kerja HIP.
  2. Menunjukkan cara mengakses dan memeriksa lingkungan HIP menggunakan alat sistem.
  3. Menjelaskan hubungan arsitektural antara portabilitas HIP dan teknologi kompilatornya.
  4. Melaksanakan instalasi khusus platform untuk lingkungan NVIDIA dan AMD.
  5. Mengkoordinasikan proses pembuatan multi-repositori untuk mengompilasi HIP dari kode sumber.
  6. Memvalidasi instalasi yang berhasil menggunakan alat konfigurasi sistem dan verifikasi.
  7. Mengonfigurasi dan mengelola memori GPU menggunakan alokasi HIP, kontrol koherensi, dan visibilitas memori host zero-copy.
  8. Mengembangkan kernel berkinerja tinggi menggunakan kualifikasi fungsi/variabel khusus HIP, tipe vektor, dan primitif sinkronisasi.
  9. Menerapkan algoritma paralel lanjutan menggunakan fungsi shuffle warp, vote, ballot, dan kelompok kooperatif.
  10. Mengotomatisasi konversi kode CUDA ke HIP menggunakan alat HIPIFY dan mengelola konversi proyek secara langsung.

Pelajaran

Lesson

This lesson introduces the multi-vendor dilemma in high-performance computing, where hardware heterogeneity and proprietary APIs create software fragmentation and maintenance debt. Students will learn how the HIP framework addresses these challenges by enabling performance portability and simplifying the transition between different GPU architectures.

This lesson covers the installation and configuration of the Heterogeneous-compute Interface for Portability (HIP) environment, focusing on the single-source paradigm for cross-platform GPU development. Students will learn how to manage environment variables like CUDA_PATH and HIP_PATH to enable the hipcc compiler to route code effectively across NVIDIA and AMD hardware architectures.

AI022: HIP Programming Model and API Deep Dive (Lesson 3) explores the architectural foundations of the HIP ecosystem, focusing on the ROCm stack, hardware discovery, and the porting workflow from CUDA to AMD architectures. Students will learn to utilize the hipify-perl and hipcc toolchains, manage low-level HSA runtime initialization, and implement effective memory mapping for GPU resource orchestration.

This lesson explores the Heterogeneous-compute Interface for Portability (HIP), a C++ runtime API designed to enable cross-platform GPU development by abstracting hardware layers for both NVIDIA and AMD systems. Students will learn how to configure the HIP environment, utilize the hipcc compiler, and apply functional mappings to migrate legacy CUDA applications to a unified, portable codebase.