Get in Touch
 Duration 21 hours

Course Outline

Introduction

Grasping the Core Principles of Heterogeneous Computing Approaches

The Rationale for Parallel Computing: Recognizing the Need for Parallelism

Multi-Core Processors: Architectural Insights and Design Considerations

Foundations of Threads, Thread Mechanics, and Key Concepts in Parallel Programming

Exploring the Fundamentals of GPU Software Optimization Workflows

OpenMP: The Standard for Directive-Based Parallel Programming

Practical Demonstration of Various Programs on Multicore Machines

Introduction to GPU Computing

Leveraging GPUs for Parallel Computing

The GPU Programming Model

Practical Demonstration of Various Programs on GPUs

SDKs, Toolkits, and Setting Up the GPU Environment

Utilizing Various Libraries

Demonstrating GPU Capabilities and Tools with Sample Programs and OpenACC

Comprehending the CUDA Programming Model

Mastering the CUDA Architecture

Setting Up and Exploring CUDA Development Environments

Working with the CUDA Runtime API

Understanding the CUDA Memory Model

Exploring Extended CUDA API Features

Efficient Global Memory Access in CUDA: Strategies for Global Memory Optimization

Optimizing Data Transfers in CUDA Using CUDA Streams

Leveraging Shared Memory in CUDA

Understanding and Applying Atomic Operations and Instructions in CUDA

Case Study: Basic Digital Image Processing with CUDA

Working with Multi-GPU Programming

Advanced Hardware Profiling and Sampling on NVIDIA / CUDA

Utilizing the CUDA Dynamic Parallelism API for Dynamic Kernel Launch

Summary and Conclusion

Requirements

  • C Programming
  • Linux GCC

Number of participants


Price per participant

Testimonials (1)

Upcoming Courses

Related Categories