CUDA at Scale for the Enterprise (Coursera)

CUDA at Scale for the Enterprise (Coursera)

This course will aid in students in learning in concepts that scale the use of GPUs and the CPUs that manage their use beyond the most common consumer-grade GPU installations. They will learn how to manage asynchronous workflows, sending and receiving events to encapsulate data transfers and control signals. Also, students will walk through application of GPUs to sorting of data and processing images, implementing their own software using these techniques and libraries.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

By the end of the course, you will be able to do the following:

  • Develop software that can use multiple CPUs and GPUs
  • Develop software that uses CUDA’s events and streams capability to create asynchronous workflows
  • Use the CUDA computational model to to solve canonical programming challenges including data sorting and image processing

To be successful in this course, you should have an understanding of parallel programming and experience programming in C/C++.
This course will be extremely applicable to software developers and data scientists working in the fields of high performance computing, data processing, and machine learning.
Course 3 of 4 in the GPU Programming Specialization.

What You Will Learn

  • Students will learn to develop software that can be run in computational environments that include multiple CPUs and GPUs.
  • Students will develop software that uses CUDA to create interactive GPU computational processing kernels for handling asynchronous data.
  • Students will use CUDA, hardware memory capabilities, and algorithms/libraries to solve programming challenges including image processing.

Syllabus

WEEK 1
Course Overview
The purpose of this module is for students to understand how the course will be run, topics, how they will be assessed, and expectations.

WEEK 2
Multiple CPU/GPU Systems
In professional settings, use of one CPU managing one GPU, is not a viable configuration to solve complex challenges. Students will apply CUDA capabilities for allowing multiple CPUs to communicate and manage software kernels on multiple GPUs. This will allow for scaling the size of input data and computational complexity. Students will learn the advantages and limitations of this form of synchronous processing.

WEEK 3
CUDA Events and Streams
Students will learn to utilize CUDA events and streams in their programs, to allow for asynchronous data and control flows. This will allow more interactive and long-lasting software, including analytic user interfaces, near live-streaming video or financial feeds, and dynamic business processing systems.

WEEK 4
Sorting Using GPUs
The purpose of this module is for students to understand the basis in hardware and software that CUDA uses. This is required to appropriately develop software to optimally take advantage of GPU resources.

WEEK 5
Image Processing using Nvidia Programming Primitives
The purpose of this module is for students to understand the principles of developing CUDA-based software.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Digital Signal Processing 4: Applications (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Digital Signal Processing 4: Applications (Coursera)

Digital Signal Processing is the branch of engineering that, in the space of just a few decades, has enabled unprecedented levels of interpersonal communication and of on-demand entertainment. By reworking the principles of electronics, telecommunication and computer science into a unifying paradigm, DSP is a the heart of the digital revolution that brought us CDs, DVDs, MP3 players, mobile phones and countless other devices.

Oct 12th 2026
3 Weeks
Image Segmentation, Filtering, and Region Analysis (Coursera) Coursera
MathWorks

Image Segmentation, Filtering, and Region Analysis (Coursera)

In this course, you will build on the skills learned in Introduction to Image Processing to work through common complications such as noise. You’ll use spatial filters to deal with different types of artifacts. You’ll learn new approaches to segmentation such as edge detection and clustering. You’ll also analyze regions of interest and calculate properties such as size, orientation, and location.

Oct 12th 2026
4 Weeks
Robotic Vision: Processing Images (FutureLearn) FutureLearn
Queensland University of Technology

Robotic Vision: Processing Images (FutureLearn)

How do computers process images? Learn about image processing and image features, and how robots can be programmed to see. Programming a robot to see requires knowing the principles of vision, mathematical knowledge and programming skills. We explore how computers process images, learning the operations required to process an image using MATLAB.

No sessions available
4 Weeks
Using GPUs to Scale and Speed-up Deep Learning (edX) EdX
IBM

Using GPUs to Scale and Speed-up Deep Learning (edX)

Training complex deep learning models with large datasets takes a long time. In this course, you will learn how to use accelerated GPU hardware to overcome the scalability problem in deep learning. Training a complex deep learning model with a very large dataset can take hours, days and occasionally weeks to train. So, what is the solution? Accelerated hardware.

No sessions available
5-12 Weeks
GIS Image Analysis in ArcGIS Pro (edX) EdX
University of Alaska Fairbanks,AlaskaX

GIS Image Analysis in ArcGIS Pro (edX)

Learn fundamentals of remote sensing, image analysis, image processing and its application on real-world problems such as vegetation health, wildfire severity, and flooding. Image analysis is extraction of meaningful information from an image to accomplish a simple task like understanding the landscape or to solve a complex problem like face recognition.

Self Paced
Self-Paced
Image Analysis Methods for Biologists (FutureLearn) FutureLearn
The University of Nottingham

Image Analysis Methods for Biologists (FutureLearn)

Get an introduction to image acquisition and analysis for biologists – from basic techniques to the future of image analysis. Improve your image analysis knowledge and ability to analyse your images. The use of automatic image analysis in the biological sciences has increased significantly in recent years, especially with automated image capture and the rise of phenotyping.

Available now
4 Weeks
High Performance Computing (Udacity) Udacity
Georgia Institute of Technology,Udacity

High Performance Computing (Udacity)

The goal of this course is to give you solid foundations for developing, analyzing, and implementing parallel and locality-efficient algorithms. This course focuses on theoretical underpinnings. To give a practical feeling for how algorithms map to and behave on real systems, we will supplement algorithmic theory with hands-on exercises on modern HPC systems, such as Cilk Plus or OpenMP on shared memory nodes, CUDA for graphics co-processors (GPUs), and MPI and PGAS models for distributed memory systems.

Self Paced
Self-Paced
Intro to Artificial Intelligence (Udacity) Udacity
Udacity

Intro to Artificial Intelligence (Udacity)

This course will introduce you to the basics of AI. Topics include machine learning, probabilistic reasoning, robotics, computer vision, and natural language processing. Artificial Intelligence (AI) is a field that has a long history but is still constantly and actively growing and changing. In this course, you’ll learn the basics of modern AI as well as some of the representative applications of AI.

Self Paced
Self-Paced
Identifying Security Vulnerabilities in C/C++Programming (Coursera) Coursera
University of California, Davis

Identifying Security Vulnerabilities in C/C++Programming (Coursera)

This course builds upon the skills and coding practices learned in both Principles of Secure Coding and Identifying Security Vulnerabilities, courses one and two, in this specialization. This course uses the focusing technique that asks you to think about: “what to watch out for” and “where to look” to evaluate and ultimately remediate fragile C++ library code.

Oct 12th 2026
4 Weeks
Introduction to Image Processing (Coursera) Coursera
MathWorks

Introduction to Image Processing (Coursera)

In this introduction to image processing, you'll take your first steps in accessing and adjusting digital images for analysis and processing. You will load, save, and adjust image size and orientation while also understanding how digital images are recognized. You will then perform basic segmentation and quantitative analysis. Lastly, you will enhance the contrast of images to make objects of interest easier to identify.

Oct 12th 2026
4 Weeks
Custom and Distributed Training with TensorFlow (Coursera) Coursera
DeepLearning.AI

Custom and Distributed Training with TensorFlow (Coursera)

In this course, you will: • Learn about Tensor objects, the fundamental building blocks of TensorFlow, understand the difference between the eager and graph modes in TensorFlow, and learn how to use a TensorFlow tool to calculate gradients; • Build your own custom training loops using GradientTape and TensorFlow Datasets to gain more flexibility and visibility with your model training; • Learn about the benefits of generating code that runs in graph mode, take a peek at what graph code looks like, and practice generating this more efficient code automatically with TensorFlow’s tools; • Harness the power of distributed training to process more data and train larger models, faster, get an overview of various distributed training strategies, and practice working with a strategy that trains on multiple GPU cores, and another that trains on multiple TPU cores.

Oct 5th 2026
4 Weeks