CONTACT ONS

Cursusaanbod

GPU Computing en CUDA Architectuur

  • Verschillen in architectuur tussen CPU en GPU
  • Het streamingmultiprocessor-model van NVIDIA GPU's
  • Overzicht van het CUDA-programmeermodel
  • Heterogene computing en het host-device-paradigma

De CUDA-ontwikkelomgeving instellen

  • Installeren van de CUDA Toolkit 13.x
  • NVCC-compiler en bouwworkflow
  • De omgeving verifiëren met device queries
  • IDE-integratie en ontwikkeltools

CUDA-kernels schrijven en lanceren

  • Syntaxis en kwalificaties van kernfuncties
  • Configuratie voor lancing en uitvoering
  • Vectoroptelling en basispatronen voor data-parallelle processing
  • CUDA-macro's voor foutcontrole

CUDA Threadhiërarchie en Uitvoeringsmodel

  • Organisatie van grid, block en thread
  • Thread-indexering en berekening van de globale ID
  • Warp-uitvoering en het SIMT-model
  • Occupancy en resourcegebruik

GPU-geheugenarchitectuur en -beheer

  • Geheugentypen: global, shared, constant, registers
  • Toewijzen en vrijgeven van apparaatgeheugen
  • Overdracht van host naar apparaat en omgekeerd
  • Gedeeld geheugen voor samenwerking binnen een block

Unified Memory en Gegevensmigratie

  • Het unified memory-model en beheerde toewijzingen
  • Page migratie en on-demand paging
  • Asynchrone prefetching met cudaMemPrefetchAsync
  • Geheugenadviesindicaties voor toegangs patronen

Systeembrede profilering met Nsight Systems

  • Tijdlijnanalyse in Nsight Systems
  • Identificeren van CPU-GPU-synchronisatiepunten
  • Visualiseren van kernel-uitvoering en gegevensoverdracht
  • Systemniveau prestatiegegevens interpreteren

Kerneloptimalisatie met Nsight Compute

  • Interactieve kernelprofilering in Nsight Compute
  • Analyse van geheugendoorvoer en bandbreedte
  • Gebruik van rekenkracht en warpstatistieken
  • Gestuurde analyse en optimalisatieregels

Concurrent Streams en Asynchrone Bewerkingen

  • CUDA-streams en de standaardstream
  • Overlappende kerneluitvoering met gegevensoverdracht
  • Stream-synchronisatie en CUDA-events
  • Patiroonpatronen voor multi-streampipelines

Foutafhandeling en Debugtools

  • CUDA-API-foutcodes en herstelstrategieën
  • compute-sanitizer voor controle van geheugentoegang
  • cuda-gdb voor het debuggen van kernels
  • Asserties en synchronisatie voor foutdetectie

Door profilering gedreven optimalisatiewerkstroom

  • Iteratieve profileringsmethodologie
  • Identificeren en prioriteren van knelpunten
  • Testen op prestatievermindering
  • Dokumenteren van optimalisatiebeslissingen

Eind-tot-eind project: versnelde applicatie

  • Ontwerpen van een volledige GPU-versnelde oplossing
  • Profiling integreren doorheen het ontwikkelproces
  • Prestatiemeeting en rapportage
  • Aandachtspunten voor implementatie in productie

Vereisten

  • Basisvaardigheden in C/C++-programmering, waaronder variabeltypen, lussen, voorwaardelijke statementen, functies en manipulatie van arrays
  • Vertrouwdheid met compileren en uitvoeren van programma's via de opdrachtprompt
  • Geen voorkennis van GPU- of CUDA-programmering vereist

Doelgroep

  • Softwareontwikkelaars en ingenieurs die C/C++-applicaties met GPU's willen versnellen
  • Wetenschappelijke onderzoekers en HPC-specialisten die overstappen van alleen CPU naar heterogene computing
  • Technische leidinggevenden die GPU-versnelling evalueren voor productiewerklasten
 8 Uren

Aangepaste bedrijfsopleiding

Opleidingsoplossingen ontworpen exclusief voor bedrijven.

  • Aangepaste inhoud: We passen de syllabus en praktijkopdrachten aan naar de echte doelen en behoeften van uw project.
  • Voor flexibel schema: Datums en tijden aangepast aan het rooster van uw team.
  • Formaat: Online (live), In-company (bij uw kantoren) of Hybride.
Investering

Prijs per privégroep, online live training, startend vanaf 3200 € + BTW*

Neem contact met ons op voor een exacte offerte en om onze laatste promoties te horen

Voorlopige Aankomende Cursussen

Gerelateerde categorieën