What Does MVP Stand For? It’s Not What You Think.
October 7, 2024
Article
This course is part of GPU Programming Specialization
Instructor: Chancellor Thomas Pascale
2,405 already enrolled
Included with
(13 reviews)
Recommended experience
Intermediate level
Some experience in C/C++ programming
(13 reviews)
Recommended experience
Intermediate level
Some experience in C/C++ programming
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.
Add to your LinkedIn profile
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
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.
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.
The purpose of this module is for students to understand how the course will be run, topics, how they will be assessed, and expectations.
3 videos1 reading1 programming assignment2 discussion prompts1 ungraded lab
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.
7 videos2 programming assignments1 peer review1 discussion prompt2 ungraded labs
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.
5 videos2 readings1 programming assignment1 discussion prompt1 ungraded lab
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.
11 videos1 reading1 programming assignment1 discussion prompt1 ungraded lab
The purpose of this module is for students to understand the principles of developing CUDA-based software.
7 videos1 peer review1 discussion prompt1 ungraded lab
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.
Johns Hopkins University
Course
Johns Hopkins University
Course
Johns Hopkins University
Course
Johns Hopkins University
Specialization
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Earn a degree from world-class universities - 100% online
Upskill your employees to excel in the digital economy
Yes, but for grading purposes you will still need to upload any software artifacts (source code, header files, etc.) into the Coursera lab environment.
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site will not then work.
These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.
These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us to know which pages are the most and least popular and see how visitors move around the site. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.
These cookies enable the website to provide enhanced functionality and personalization. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.