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.
提供方
课程信息
Some experience programming
您将学到的内容有
Students will learn how to develop concurrent software in Python and C/C++ programming languages.
Students will gain an introductory level of understanding of GPU hardware and software architectures.
您将获得的技能
- Cuda
- Python Programming
- Thread (Computing)
- C++
Some experience programming
提供方

约翰霍普金斯大学
The mission of The Johns Hopkins University is to educate its students and cultivate their capacity for life-long learning, to foster independent and original research, and to bring the benefits of discovery to the world.
授课大纲 - 您将从这门课程中学到什么
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.
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.
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.
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.
关于 GPU Programming 专项课程
This specialization is intended for data scientists and software developers to create software that uses commonly available hardware. Students will be introduced to CUDA and libraries that allow for performing numerous computations in parallel and rapidly. Applications for these skills are machine learning, image/audio signal processing, and data processing.

常见问题
我什么时候能够访问课程视频和作业?
我订阅此专项课程后会得到什么?
有助学金吗?
Can I program on my own laptop/desktop?
还有其他问题吗?请访问 学生帮助中心。