Get in Touch
 Duration 21 hours

Course Outline

Introduction

Core Principles of Heterogeneous Computing Methodology

Why Parallel Computing? Analyzing the Requirements for Parallel Processing

Multi-Core Processors: Exploring Architecture and Design

Introduction to Threads: Fundamentals and Key Concepts in Parallel Programming

Fundamentals of GPU Software Optimization Workflows

OpenMP: The Standard for Directive-Based Parallel Programming

Practical Demonstration: Running Various Programs on Multicore Systems

Introduction to GPU Computing

Leveraging GPUs for Parallel Computing Tasks

The GPU Programming Model Explained

Practical Demonstration: Executing Various Programs on GPU Hardware

Setting Up the SDK, Toolkit, and GPU Development Environment

Utilizing Various GPU Libraries

Demonstrating GPU Tools and Capabilities with Sample Programs and OpenACC

Deep Dive into the CUDA Programming Model

Comprehending the CUDA Architecture

Configuring and Exploring CUDA Development Environments

Interacting with the CUDA Runtime API

Analyzing the CUDA Memory Model

Discovering Extended CUDA API Features

Optimizing Global Memory Access in CUDA: Strategies for Efficiency

Enhancing Data Transfer Performance in CUDA with CUDA Streams

Leveraging Shared Memory within CUDA

Mastering Atomic Operations and Instructions in CUDA

Case Study: Implementing Basic Digital Image Processing using CUDA

Techniques for Multi-GPU Programming

Advanced Hardware Profiling and Sampling Techniques for NVIDIA / CUDA

Implementing Dynamic Kernel Launches via the CUDA Dynamic Parallelism API

Wrap-Up and Final Summary

Requirements

  • C Programming
  • Linux GCC

Number of participants


Price per participant (excl. VAT)

Testimonials (1)

Upcoming Courses

Related Categories