Kursplan

Introduktion

  • Vad är GPU-programmering?
  • Varför använda CUDA med Python?
  • Kärnkoncept: Trådar, Block, Galler

Översikt över CUDA-funktioner och arkitektur

  • GPU vs CPU-arkitektur
  • Förstå SIMT (Single Instruction, Multiple Threads)
  • CUDA-programmeringsmodell

Inställning av utvecklingsmiljö

  • Installation av CUDA Toolkit och drivrutiner
  • Installation av Python och Numba
  • Inställning och verifiering av miljön

Fundamentala parallellprogrammeringskoncept

  • Introduktion till parallellkörning
  • Förstå trådar och trådhierarkier
  • Arbeta med warps och synkronisering

Arbeta med Numba-kompilatorn

  • Introduktion till Numba
  • Skriva CUDA-kärnor med Numba
  • Förstå @cuda.jit-dekoratorer

Bygga en anpassad CUDA-kernel

  • Skriva och starta en grundläggande kernel
  • Använda trådar för elementvisa operationer
  • Hantera galler- och blockdimensioner

Minneshantering

  • Typer av GPU-minne (globalt, delat, lokalt, konstant)
  • Minnesöverföring mellan värd och enhet
  • Optimera minnanvändning och undvik flaskehalsar

Förväxande ämnen i GPU-acceleration

  • Deltat minne och synkronisering
  • Använda strömmar för asynkron körning
  • Grunderna i multi-GPU-programmering

Konvertera CPU-baserade applikationer till GPU

  • Profilerings-CPU-kod
  • Identifiera parallelliserbara delar
  • Flytta logik till CUDA-kärnor

Felsökning

  • Felsöka CUDA-applikationer
  • Vanliga fel och hur man löser dem
  • Vägar och tekniker för testning och validering

Sammanfattning och nästa steg

  • Granskning av kärnkoncept
  • Bästa praxis i GPU-programmering
  • Resurser för fortsatt lärande

Krav

  • Erfarenhet av Python-programmering
  • Erfarenhet av NumPy (ndarrays, ufuncs osv.)

Målgrupp

  • Utvecklare
 14 Timmar

Antal deltagare


Pris per deltagare

Vittnesmål (1)

Kommande Kurser

Relaterade Kategorier