Introduction to Concurrent Programming with GPUs (Coursera)

Introduction to Concurrent Programming with GPUs (Coursera)
Course Auditing
Categories
Effort
Certification
Languages
S​ome experience programming.
Misc

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

Introduction to Concurrent Programming with GPUs (Coursera)
This course will help prepare students for developing code that can process large amounts of data in parallel. It will focus on foundational aspects of concurrent programming, such as CPU/GPU architectures, multithreaded programming in C and Python, and an introduction to CUDA software/hardware.

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

Course 1 of 4 in the GPU Programming Specialization.


What You Will Learn

- S​tudents will learn how to develop concurrent software in Python and C/C++ programming languages.

- S​tudents will gain an introductory level of understanding of GPU hardware and software architectures.


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

Core Principles of Parallel Programming on CPUs and GPUs

In order to create software that process greater amounts of data at faster speeds, software operating systems, programming languages, and frameworks require strategies for accessing and modification of data in a manner that maximizes speed, while minimizing the possibility of data being in incorrect states. In this module, students will be presented canonical concurrency problems such as the Dining Philosophers. Additionally, they will learn how operating systems and programming languages handle these problems, and discuss real world big data concurrency applications.


WEEK 3

Introduction to Parallel Programming with C and Python

Modern programming languages allow developers to create software with complex logic for manipulation of data in parallel, taking advantage of the multiple CPU cores in most computers. Students will develop simple software, written in the C++ and Python 3 programming languages, that process data sets concurrently.


WEEK 4

NVidia GPU Hardware/Software

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

Introduction to GPU Programming

The purpose of this module is for students to understand the principles of developing CUDA-based software.



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

Course Auditing
44.00 EUR/month
S​ome experience programming.

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