Course description
An introduction to programming GPUs for general computing tasks.
GPUs are a key element of the current computing landscape; they are capable of exceptional performance for a substantial range of applications, hence they are found in most contemporary supercomputers. Harnessing their power requires using appropriate techniques, which are the main topic of this course.
Upcoming start dates
Suitability - Who should attend?
Anyone who needs to develop new applications or port existing ones on GPU -enabled computing resources should attend.
Outcome / Qualification etc.
What you will learn
Delegates will get the necessary knowledge to 1. judge when and where to apply GPU computing 2. use existing development tools and frameworks to best advantage 3. adapting existing algorithms 4. understand performance issues.
Training Course Content
Core content
- Introduction to General Purpose GPU
- The GPU architecture
- CUDA threading model (threads, blocks, warps)
- CUDA synchronisation (intra-block and host-device)
- CUDA memory model (registers, global, and shared memory) and memory management API
- Performance considerations (memory coalescing, shared memory bank conflicts, warp divergence)
- Running the Hello World example (kernel dispatch, CPU-GPU data transfers)
- Examples from linear algebra, outlining: 2D thread blocks, reduction operations, shared memory, synchronisation, coalescing
- GPU Performance issues (Compute Capability, device occupancy, peak performance, performance measurement)
- Development Tools (Nsight, Visual profiler, Occupancy calculator, cuda-memcheck)
- GPU Libraries (Thrust, CUBLAS, CUSPARSE, CUFFT)
- Advanced Optimisation techniques
Course delivery details
Course structure
Mixture of lectures and practical, hands-on sessions.
Request info
Cranfield University
Cranfield is a specialist postgraduate university that is a global leader for education and transformational research in technology and management. We have many world-class, large-scale facilities, including our own global research airport, which offers a unique environment for transformational education...