Course Outline

Pendahuluan

  • Apa itu pemrograman GPU?
  • Mengapa menggunakan CUDA dengan Python?
  • Konsep kunci: Threads, Blocks, Grids

Ringkasan Fitur dan Arsitektur CUDA

  • GPU vs arsitektur CPU
  • Mengerti SIMT (Single Instruction, Multiple Threads)
  • Model pemrograman CUDA

Menyiapkan Lingkungan Pengembangan

  • Instalasi CUDA Toolkit dan driver
  • Instalasi Python dan Numba
  • Mengatur dan memverifikasi lingkungan

Fundamental Eksekusi Paralel Programming

  • Pendahuluan tentang eksekusi paralel
  • Mengerti threads dan hierarki thread
  • Bekerja dengan warps dan sinkronisasi

Bekerja dengan Kompilator Numba

  • Pendahuluan tentang Numba
  • Menulis CUDA kernels dengan Numba
  • Mengerti dekorator @cuda.jit

Membangun Kernel CUDA Custom

  • Menulis dan meluncurkan kernel dasar
  • Menggunakan threads untuk operasi element-wise
  • Mengelola dimensi grid dan block

Management Memori

  • Jenis-jenis memori GPU (global, shared, local, constant)
  • Transfer memori antara host dan device
  • Mengoptimalkan penggunaan memori dan menghindari botleneck

Tema Lanjutan dalam Akselerasi GPU

  • Memori shared dan sinkronisasi
  • Menggunakan streams untuk eksekusi asynchronous
  • Basis pemrograman multi-GPU

Mengubah Aplikasi Berbasis CPU ke GPU

  • Pemrofiling kode CPU
  • Menentukan bagian yang dapat diparalelkan
  • Memporting logika ke CUDA kernels

Troubleshooting

  • Debugging aplikasi CUDA
  • Kesalahan umum dan cara menyelesaikannya
  • Alat dan teknik untuk pengujian dan validasi

Ringkasan dan Langkah Berikutnya

  • Ulasan konsep kunci
  • BEST PRACTICES dalam pemrograman GPU
  • Sumber daya untuk pembelajaran lanjutan

Requirements

  • Python pengalaman pemrograman
  • Pengalaman dengan NumPy (ndarrays, ufuncs, dll.)

Target Peserta

  • Pengembang
 14 Hours

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses (Minimal 5 peserta)

Related Categories