Introduction to Parallel Computing with MPI and OpenMP

Wednesday, 6 March 2024 09:00 to Friday, 8 March 2024 18:00
Alessandro MaraniAlessandroCasalino , AndrewEmerson , AlessandroMarani , OrlenysTroconis
Provided as: 
Ordinary Course
Registrations closing: 
Wednesday, 14 February 2024 at 09:00

The course is FREE of charge, 

It will be held EXCLUSIVELY IN PRESENCE (No Streaming Available) and will be held in ITALIAN language. 

Organizer: 
Alessandro,Marani
Teachers: 
AlessandroCasalino , AndrewEmerson , AlessandroMarani , OrlenysTroconis

Description:

The aim of this course is to give Introduction to Parallel Programming for Shared Memory and Message Passing paradigms. The basic functionalities of two of the widest used parallel programming tools are presented: the MPI (Message Passing Interface) library for distributed architectures and OpenMP system for shared memory and multicore architectures. 

MPI is a message-passing library specification which provides a powerful and portable way for expressing parallel programs.

OpenMP is a portable and scalable model that gives shared-memory parallel programmers a simple and flexible interface for developing parallel applications for platforms ranging from desktop to supercomputers.

Implementations of both MPI and OpenMP are available for all modern computer architectures. Programs can be written in C/C++ or FORTRAN.

Large part of the course will be devoted to practical sessions where students will use the concepts discussed in the presentations to parallelise the proposed programs.

Skills: 

By the end of the course the student will be able to:

  • understand distributed parallel programming
    • manage communications in MPI
    • processor groups and topologies
  • understand shared memory parallel programming
    • OpenMP Compiler directives, Parallel regions, Data scope, Worksharing
    • Fork & Join OpenMP model
    • OpenMP Environment variables and Runtime library

Target audience: 

Students and researchers interested in developing or optimizing parallel programs, either in shared or distributed memory computing environments.

Pre-requisites: 

Good knowledge and experience of C or FORTRAN. Good experience with UNIX operating systems.

 

Intended for: 
Companies
Research Institutions
Universities
Area: 
Techniques
Length: 
3dd
Conclusa: 
0

Next courses

Non sono previste edizioni di questo corso.

Any question?

For HPC and computer graphics courses, write to corsi.hpc@cineca.it

About CINECA

Cineca is a non profit Consortium, made up of 102 Italian national institutions: Universities, Italian Research Institutions and the Italian Ministries of Universities and Education.

Today it is the largest Italian computing centre, one of the most important worldwide. With more seven hundred employees, it operates in the technological transfer sector through high performance scientific computing, the management and development of networks and web based services, and the development of complex information systems for treating large amounts of data.

It develops advanced Information Technology applications and services, acting like a trait-d'union between the academic world, the sphere of pure research and the world of industry and Public Administration. .

Visit the Cineca website