Introduction to Parallel Programming
Partnership for Advanced Computing in Europe (PRACE)
  • Start Date: 14 Feb, 2022
  • 5 weeks
  • Study Content: Videos


Discover parallel programming fundamentals in this beginner programming course, covering OpenMP, MPI, OpenCL, and CUDA.

Course Fee: Free
Certificate Cost: See Fees and Eligibility

Course Description

This course is made available through the eLearnAfrica and FutureLearn partnership.

Get an introduction to parallel programming using C and similar languages


This course gives beginner programmers an introduction to parallel programming.


Parallel programming describes the breaking down of a larger problem into smaller steps. Instructions are delivered to multiple processors, which will execute necessary calculations in parallel – hence the name.


On this course, you will explore the fundamentals of parallel programming using C, C++, Python, Fortran, Cuda/OpenCL or similar programming languages.


Learn to use OpenMP and MPI for parallel programming


On this course, you will:



  • Learn how to use OpenMP (Open Multi-Processing) for incremental parallelisation within a single multicore shared memory paradigm

  • Learn how to use the MPI (Message Passing Interface) message-passing standard to control communication between two processes, subroutines, or functions within a program

  • Get an introduction to the OpenMPI library project, used by TOP500 supercomputers, which aims to create a single world-class open source MPI implementation based on best practice

  • Learn how to express numerical problems in parallel programming paradigms, gaining an awareness of potential design and performance pitfalls in heterogeneous architectures
    Get an introduction to hybrid and accelerated paradigms (Cuda, OpenCL)


This course is delivered by the LECAD Laboratory at the University of Ljubljana, as part of PRACE (Partnership for Advanced Computing in Europe). The LECAD Laboratory emphasises the teaching of parallel programming alongside leading European HPC (high performance computing) centres.


This course is part of an introduction to programming from PRACE, targeting beginner programmers. It follows on from the Supercomputing course.


This course is hands-on. Some knowledge of C, C++, Fortran, Python, or similar programming languages would be useful.


Certificate cost may vary. You will be redirected to the host page for cost and payment options.

Partnership for Advanced Computing in Europe (PRACE)

The Partnership for Advanced Computing in Europe (PRACE) is an international non-profit association with its seat in Brussels. The PRACE Research Infrastructure provides a persistent world-class high performance computing service for scientists and researchers from academia and industry in Europe.

The computer systems and their operations accessible through PRACE are provided by 4 PRACE members (BSC representing Spain, CINECA representing Italy, CSCS representing Switzerland, GCS representing Germany and GENCI representing France). The Implementation Phase of PRACE receives funding from the EU’s Seventh Framework Programme (FP7/2007-2013) under grant agreement RI-312763 and from the EU’s Horizon 2020 Research and Innovation Programme (2014-2020) under grant agreement 653838.

 

This institution is available on eLearnAfrica through partnership with FutureLearn.

You may be able to download course materials after enrolling in this course. If not, all of the necessary course materials provided by the course instructor will be available on the provider's course page.
COLLABORATION POLICY

By enrolling in a course on or through eLearnAfrica, you are joining a special worldwide community of learners. The aspiration of eLearnAfrica is to provide anyone with an internet connection access to courses from the best universities and institutions in the world and to provide our learners the best educational experience internet technology enables. You are a part of the community that will help eLearnAfrica achieve this goal. eLearnAfrica depends upon your motivation to learn the material and to do so with honesty and academic integrity. In order to participate in eLearnAfrica, you must agree to the Honor Code below and any additional terms specific to a class.

ELEARNAFRICA HONOR CODE PLEDGE

By enrolling in a course, program, or degree hosted on the eLearnAfrica App or Site, I agree that I will:

  • Complete all tests and assignments on my own, unless collaboration on an assignment is explicitly permitted.

  • Maintain only one user account and not let anyone else use my username and/or password.

  • Not engage in any activity that would dishonestly improve my results, or improve or hurt the results of others.

  • Not post answers to problems that are being used to assess student performance.

  • Abide by any and all requirements of the eLearnAfrica Participants as may regard the expectations of civil or academic behavior or of community standards.

VIOLATIONS

If you are found in violation of the Terms and Conditions or Honor Code, you may be subject to one or more of the following actions:

  • Receiving a zero or no credit for an assignment;

  • Having any certificate earned in the course withheld or revoked;

  • Being unenrolled from a course, learning program or degree program; or

  • Termination of your use of the App and/or Site.

  • Additional actions may be taken at the sole discretion of eLearnAfrica and eLearnAfrica course providers. 

No refunds will be issued in the case of any corrective action for such violations.

Honor code violations will be determined at the sole discretion of eLearnAfrica, the Partners, or Members. You will be notified if a determination has been made that you have violated this honor code and you will be informed of the corresponding action to be taken as a result of the violation.

CHANGING THE HONOR CODE

Please note that we review and may make changes to this Honor Code from time to time. Any changes to this Honor Code will be effective immediately upon posting on this page, with an updated effective date. By accessing the App and/or Site after any changes have been made, you signify your agreement on a prospective basis to the modified Honor Code and any changes contained therein. Be sure to return to this page periodically to ensure familiarity with the most current version of this Honor Code.

Effective Date: September 22, 2016