Online Course – Google Certified Professional Internship in GPU Programming, Johns Hopkins University

Solve challenges with powerful GPUs. Develop skills in high-performance computing and apply them in many fields.

Suggested by: Coursera (What is Coursera?)

Professional Certificate

Beginners

No prior knowledge required

Time to complete the course

7-day free trial

No unnecessary risks

Skills you will acquire in the course

  • Exposure to CUDA and parallel computing libraries
  • Developing software that utilizes available hardware
  • Applying machine learning techniques
  • Image and audio signal processing
  • Data processing
  • Carrying out practical projects in the field of image/signal processing
  • Exploring CUDA-based solutions
  • Create short demos and share code

What you will learn in the course

Courses for which the course is suitable

  • Data Scientist
  • Software developer
  • Machine Learning Engineer
  • Signal Processing Engineer
  • Image processing application developer
  • Audio processing application developer
  • Data Analyst
  • Developer of CUDA-based solutions

Internship – 4-part course series

The internship is designed for data scientists and software developers who are interested in creating software that takes advantage of available hardware. Students will be exposed to CUDA and libraries that allow for multiple calculations to be performed simultaneously and quickly.

Applications

  • Machine learning
  • Image/Audio Signal Processing
  • Data processing

Applied Learning Project

Learners will do at least 2 projects that will allow them to explore CUDA-based solutions for image/signal processing, as well as a topic of choice that can be related to their current or future professional career.

They will also create short demos of their efforts and share their code.

Details of the courses that make up the specialization

Introduction to Parallel Programming Using GPUs

Course 1 – 19 hours

What you will learn: Students will learn to develop parallel software in Python and C/C++ programming languages. Students will gain a basic level of understanding of GPU hardware and software architectures.

Course 2 – 21 hours

What you will learn: Students will learn to use the CUDA framework to write C/C++ software that runs on Nvidia CPUs and GPUs. Students will transform algorithms and sequential projects into CUDA commands that execute hundreds to thousands of times simultaneously on GPU hardware.

Course 3 – 28 hours

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 code for handling asynchronous data.

Course 4 – 25 hours

What you will learn: How to develop software that performs advanced mathematical operations using libraries like cuFFT and cuBLAS. How to use the Thrust library to perform a variety of data manipulations and data structures that hide memory management. How to develop machine learning software for a variety of purposes using neural networks modeling the cuTensor and cuDNN libraries.