Bedankt voor uw aanvraag! Een van onze medewerkers neemt binnenkort contact met u op
Bedankt voor uw boeking! Een van onze medewerkers neemt binnenkort contact met u op.
Cursusaanbod
Inleiding
- Wat is GPU-programmering?
- Waarom gebruik je GPU-programmering?
- Welke uitdagingen en trade-offs heeft GPU-programmering?
- Welke frameworks zijn er voor GPU-programmering?
- Het juiste framework kiezen voor je toepassing
OpenCL
- Wat is OpenCL?
- Wat zijn de voordelen en nadelen van OpenCL?
- De ontwikkelomgeving voor OpenCL opzetten
- Een basis OpenCL-programma maken dat vectoroptelling uitvoert
- De OpenCL-API gebruiken om apparaatinformatie op te vragen, geheugen toe te wijzen en vrij te geven, gegevens tussen host en apparaat te kopiëren, kernels te starten en threads te synchroniseren
- De OpenCL C-taal gebruiken om kernels te schrijven die op het apparaat worden uitgevoerd en gegevens manipuleren
- De ingebouwde functies, variabelen en bibliotheken van OpenCL gebruiken om veelvoorkomende taken en bewerkingen uit te voeren
- De geheugenruimtes van OpenCL, zoals globaal, lokaal, constant en privé, gebruiken om gegevensoverdrachten en geheugentoegang te optimaliseren
- Het uitvoeringsmodel van OpenCL gebruiken om de work-items, work-groups en ND-ranges die parallelisme definiëren te beheren
- GPU-programma's met hulpmiddelen zoals CodeXL debuggen en testen
- GPU-programma's optimaliseren met technieken zoals coalescing, caching, prefetching en profiling
CUDA
- Wat is CUDA?
- Wat zijn de voordelen en nadelen van CUDA?
- De ontwikkelomgeving voor CUDA opzetten
- Een basis CUDA-programma maken dat vectoroptelling uitvoert
- De CUDA-API gebruiken om apparaatinformatie op te vragen, geheugen toe te wijzen en vrij te geven, gegevens tussen host en apparaat te kopiëren, kernels te starten en threads te synchroniseren
- De CUDA C/C++-taal gebruiken om kernels te schrijven die op het apparaat worden uitgevoerd en gegevens manipuleren
- De ingebouwde functies, variabelen en bibliotheken van CUDA gebruiken om veelvoorkomende taken en bewerkingen uit te voeren
- De geheugenruimtes van CUDA, zoals globaal, gedeeld, constant en lokaal, gebruiken om gegevensoverdrachten en geheugentoegang te optimaliseren
- Het uitvoeringsmodel van CUDA gebruiken om de threads, blokken en grids die parallelisme definiëren te beheren
- GPU-programma's met hulpmiddelen zoals CUDA-GDB, CUDA-MEMCHECK en NVIDIA Nsight debuggen en testen
- GPU-programma's optimaliseren met technieken zoals coalescing, caching, prefetching en profiling
ROCm
- Wat is ROCm?
- Wat zijn de voordelen en nadelen van ROCm?
- De ontwikkelomgeving voor ROCm opzetten
- Een basis ROCm-programma maken dat vectoroptelling uitvoert
- De ROCm-API gebruiken om apparaatinformatie op te vragen, geheugen toe te wijzen en vrij te geven, gegevens tussen host en apparaat te kopiëren, kernels te starten en threads te synchroniseren
- De ROCm C/C++-taal gebruiken om kernels te schrijven die op het apparaat worden uitgevoerd en gegevens manipuleren
- De ingebouwde functies, variabelen en bibliotheken van ROCm gebruiken om veelvoorkomende taken en bewerkingen uit te voeren
- De geheugenruimtes van ROCm, zoals globaal, lokaal, constant en privé, gebruiken om gegevensoverdrachten en geheugentoegang te optimaliseren
- Het uitvoeringsmodel van ROCm gebruiken om de threads, blokken en grids die parallelisme definiëren te beheren
- GPU-programma's met hulpmiddelen zoals ROCm Debugger en ROCm Profiler debuggen en testen
- GPU-programma's optimaliseren met technieken zoals coalescing, caching, prefetching en profiling
Vergelijking
- De kenmerken, prestaties en compatibiliteit van OpenCL, CUDA en ROCm vergelijken
- GPU-programma's evalueren met behulp van benchmarks en metrieken
- De beste praktijken en tips voor GPU-programmering leren
- Huidige en toekomstige trends en uitdagingen van GPU-programmering verkennen
Samenvatting en volgende stappen
Vereisten
- Inzicht in de C/C++-taal en concepten van parallelle programmering
- Basiswetenschap van computerarchitectuur en geheiemhiërarchie
- Ervaring met command-line tools en code-editors
Doelgroep
- Ontwikkelaars die willen leren hoe ze verschillende frameworks voor GPU-programmering kunnen gebruiken en hun kenmerken, prestaties en compatibiliteit vergelijken
- Ontwikkelaars die portable en schaalbare code willen schrijven die op verschillende platforms en apparaten kan draaien
- Programmeurs die de trade-offs en uitdagingen van GPU-programmering en optimalisatie willen onderzoeken
28 Uren
Leveringsopties
PRIVÉGROEPSTRAINING
Onze identiteit draait om het leveren van precies wat onze klanten nodig hebben.
- Pre-cursusgesprek met uw trainer
- Aanpassing van de leerervaring om uw doelen te bereiken -
- Op maat gemaakte overzichten
- Praktische, praktische oefeningen met gegevens / scenario's die herkenbaar zijn voor de cursisten
- Training gepland op een datum naar keuze
- Gegeven online, op locatie/klaslokaal of hybride door experts die ervaring uit de echte wereld delen
Private Group Prices RRP from €9120 online delivery, based on a group of 2 delegates, €2880 per additional delegate (excludes any certification / exam costs). We recommend a maximum group size of 12 for most learning events.
Neem contact met ons op voor een exacte offerte en om onze laatste promoties te horen
OPENBARE TRAINING
Kijk op onze public courses