Very clear. I like the practical code examples
Learn OpenMP-Parallel Programming in C++
how to write parallel programs using OPENMP in C / C++
Development ,Programming Languages,C++
Lectures -9
Duration -2 hours
Lifetime Access
Lifetime Access
30-days Money-Back Guarantee
Get your team access to 10000+ top Tutorials Point courses anytime, anywhere.
Course Description
Welcome.
This is a practical course on C and C++ high-level languages that teaches parallel programming using OpenMP. We start by explaining what a parallel program is, its applications, and different examples of it. Then we introduced the two main APIs used for parallel programming, which are OpenMP and MPI. We also learn the difference between concurrency and parallelism.
We also discussed the shared memory model, distributed memory model, hybrid model, etc., relative to their implementation in parallel programming.
We discussed what a task region is and how to declare one.
Then we dived into writing parallel programs using the OpenMP API.
Some of the programs demonstrated each of the OpenMP work-sharing constructs, including
1. Parallel Regions –
- e.g., #pragma omp parallel
2. Runtime functions/environment variables—e.g.
- int my_thread_id = omp_get_num_threads(); – omp_set_num_threads(8);
3. Synchronization –
- e.g., #pragma omp barrier
4. Work sharing –
- e.g., #pragma omp for, #pragma omp sections
5. Data Environment –
- e.g #pragma omp parallel shared/private (…)
6. tasks, etc.
A lot of practical examples are also included in most lectures to enable the reader to get a good grasp of the concept being discussed.
At the end of the course, the student would be able to efficiently implement parallel programming to improve the speed and standard of programs written in C and C++.
Thank you.
Goals
- The student would be able to write parallel programs in C and C++.
- The learner would learn what OpenMP is and its application in parallel processing.
- The student will learn how to implement the different types of OpenMP constructs, like work sharing, environment variables, FOR constructs, data variables, tasks, etc.
- The student will learn how to translate a serial C and C++ program to a parallel program.
Prerequisites
- Beginner to intermediate knowledge of C++ or C language.

Curriculum
Check out the detailed breakdown of what’s inside the course
Introduction
9 Lectures
-
1. Introduction - difference between concurrency and parallelism, memory models 19:33 19:33
-
2. introduction to openMP 08:07 08:07
-
3. Different kinds of openMP constructs, Defining the parallel regions 07:54 07:54
-
4. False sharing and race condition in openMP, and how to implement padding 18:43 18:43
-
5. How to implement synchronization in openMP using atomic, critical, barrier 17:56 17:56
-
6. How to implement the runtime environment construct 16:37 16:37
-
7. How to use the worksharing construct - section, single, master, for, task etc 31:02 31:02
-
8. Data environment variable 17:59 17:59
-
9. implementing the task construct 11:50 11:50
Instructor Details

Ezeuko Emmanuel
With over 7years designing vhdl, verilog projects on fpga.
Emmanuel is an embedded c++ system developer. He has strong knowledge in FPGA (Field Programmable Gate Array) development, Digital Electronics, Circuit Board design, and VHDL design and modeling of hardware systems using Logism. His focus of study in school was embedded systems with specialization in soc system on chip, processor core, serial communication protocols and encryption.
Course Certificate
Use your certificate to make a career change or to advance in your current career.

Our students work
with the Best


































Feedbacks
Related Video Courses
View MoreAnnual Membership
Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses
Subscribe now
Online Certifications
Master prominent technologies at full length and become a valued certified professional.
Explore Now