One-Sided Communication and the MPI Shared Memory Interface (FutureLearn)

One-Sided Communication and the MPI Shared Memory Interface (FutureLearn)

Learn how to make the most of the new shared memory interface within the MPI application. Get to grips with the new interface of MPI-3 and its practical use. Message Passing Interface (MPI) 3.0 has two new features that enable you to share memory windows. On this four-week course from Partnership for Advanced Computing in Europe (PRACE), you’ll learn how to use these new methods to maximise your use of the application.

Class Deals by MOOC List - Click here and see FutureLearn's Active Discounts, Deals, and Promo Codes.

Refresh your knowledge of MPI one-sided communication
One-sided communication, compared to two-sided communication, can help to improve performance by reducing synchronisation, having no delay in sending data, and increasing functionality and scalability.
You’ll begin by getting an introduction to MPI one-sided communication to refresh your knowledge and skills. You’ll learn how to use the new interface, examining case-use studies in the real world to further cement your learning.
Discover the principles of MPI shared memory and how to use it
You’ll explore how to split a communicator in shared memory islands and how to synchronise load and store operations. By the end of the course, you’ll understand restrictions and advanced options when using MPI-3 shared memory.
Learn from the experts at PRACE
The mission of PRACE is to enable high-impact scientific discovery and engineering research and development across all disciplines. By offering world-class computing and data management resources and services, they aim to enhance European competitiveness for the benefit of society.

Syllabus

Week 1: Overview and the principles of One-Sided MPI Communication
Week 2: Details and examples of One-Sided MPI communication
Week 3: MPI Shared Memory – principles and how to use
Week 4: MPI-3 Memory models and fast synchronization Options

Learning on this course
You can take this self-guided course and learn at your own pace. On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?
By the end of the course, you‘ll be able to...

  • Apply MPI one-sided communication to your communication patterns in your MPI applications
  • Explain the main advantages and disadvantages of MPI one-sided communication and MPI shared memory
  • Design your program using methods of MPI communication that prevent deadlocks and ensure a correct program
  • Improve scalability by substituting non-scalable solutions with scalable one-sided approaches

**Who is the course for?
This course is designed for anyone familiar with MPI that wants to learn to program using the new interface.

What software or tools do you need?**
To take part in this course you don’t need a supercomputer, just an MPI environment on your laptop or computer.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Precalculus: the Mathematics of Numbers, Functions and Equations (FutureLearn) FutureLearn
University of Padova

Precalculus: the Mathematics of Numbers, Functions and Equations (FutureLearn)

Get an introduction to the essential mathematical knowledge and skills required to take a first course in calculus. This course is the first of two precalculus courses from the University of Padova, providing you with an introduction to the fundamental mathematical skills required to complete a first course in calculus.

Self Paced
5-12 Weeks
Introduction to Indie Games (FutureLearn) FutureLearn
Institute of Coding,UAL Creative Computing Institute

Introduction to Indie Games (FutureLearn)

Explore the thriving independent video games industry, and develop the skills to kickstart your career in the sector. Learn how great indie games are made and what it takes to work in the industry. The video games sector is booming, employing more than 16,000 people in the UK. Moreover, 99.5% of all UK games companies are small and medium-sized independent enterprises.

Jun 29th 2020
2 Weeks
Distributed Programming in Java (Coursera) Coursera
Rice University

Distributed Programming in Java (Coursera)

This course teaches learners (industry professionals and students) the fundamental concepts of Distributed Programming in the context of Java 8. Distributed programming enables developers to use multiple nodes in a data center to increase throughput and/or reduce latency of selected applications. By the end of this course, you will learn how to use popular distributed programming frameworks for Java programs, including Hadoop, Spark, Sockets, Remote Method Invocation (RMI), Multicast Sockets, Kafka, Message Passing Interface (MPI), as well as different approaches to combine distribution with multithreading.

Oct 12th 2026
4 Weeks
Designing a multidimensional poverty index (UNDP) Other Providers
University of Oxford,United Nations Development Programme - UNDP,Oxford Poverty and Human Development Initiative - OPHI

Designing a multidimensional poverty index (UNDP)

To leave no one behind for a COVID-19 recovery, it is time to develop poverty metrics beyond income. UNDP and University of Oxford are offering a FREE Massive Open Online Course "Designing a Multidimensional Poverty Index" in English, French, and Spanish on Learning for Nature. Starting 22 February, this six-week course will provide you with the tools to monitor, analyze, and report progress in reducing multidimensional poverty for a COVID-19 recovery in your country.

No sessions available
5-12 Weeks
High Performance Computing (Udacity) Udacity
Georgia Institute of Technology,Udacity

High Performance Computing (Udacity)

The goal of this course is to give you solid foundations for developing, analyzing, and implementing parallel and locality-efficient algorithms. This course focuses on theoretical underpinnings. To give a practical feeling for how algorithms map to and behave on real systems, we will supplement algorithmic theory with hands-on exercises on modern HPC systems, such as Cilk Plus or OpenMP on shared memory nodes, CUDA for graphics co-processors (GPUs), and MPI and PGAS models for distributed memory systems.

Self Paced
Self-Paced
Collaborative Coding with Git (FutureLearn) FutureLearn
University of Manchester,Institute of Coding

Collaborative Coding with Git (FutureLearn)

Find out how to improve code quality and work collaboratively on large-scale projects using Git. Gain an in-depth introduction to remote collaboration with Git. Git is an enormously powerful and flexible version control system used by over 90% of developers. On this course, you’ll discover ways to visualise and explore a project’s history through Git repositories. These skills will allow you to quickly adapt to a new collaborative environment, especially when working with Git remotely.

Self Paced
5-12 Weeks
Data Visualisation with Python: Seaborn and Scatter Plots (FutureLearn) FutureLearn
FutureLearn

Data Visualisation with Python: Seaborn and Scatter Plots (FutureLearn)

Discover how to create visualisations and show understanding of data visualisation theory with the Python programming language. Explore the best data visualisation tools to become a programming expert. This course will teach you how to bring big data sets to life through data visualisation using the powerful Python programming language.

May 30th 2022
4 Weeks
Robotics With Raspberry Pi: Build and Program Your First Robot Buggy (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Robotics With Raspberry Pi: Build and Program Your First Robot Buggy (FutureLearn)

Build and program your first robot buggy using a Raspberry Pi, learning how to connect motors, add sensors and write algorithms. Learn robotics by building a robot buggy and controlling it with a Raspberry Pi. On this course from the Raspberry Pi Foundation, you’ll build a robot buggy controlled by a Raspberry Pi.

Jan 2nd 2023
3 Weeks
Ethical Hacking: An Introduction (FutureLearn) FutureLearn
Coventry University

Ethical Hacking: An Introduction (FutureLearn)

Learn the principles and methods of ethical hacking and penetration testing, and build your ethical hacking skills. Explore the principles and methods of ethical hacking. What is ethical hacking? How does it work? What principles do ethical hackers follow? Answer these questions and more with the course introducing ethical hacking. You will have the opportunity to learn the principles of ethical hacking and consider its legal and methodological foundations.

Jan 16th 2023
2 Weeks
Improving Computing Classroom Practice Through Action Research (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Improving Computing Classroom Practice Through Action Research (FutureLearn)

Learn how to run your own action research project to improve the computing pedagogy and practices in your classroom. Apply action research to your teaching and become a more reflective practitioner. Through this course, you will become familiar with the process of classroom action research, and plan your own classroom-based investigation.

Feb 7th 2022
2 Weeks
Fortran for Scientific Computing (FutureLearn) FutureLearn
Partnership for Advanced Computing in Europe - PRACE,Vlaams Supercomputer Centre

Fortran for Scientific Computing (FutureLearn)

Learn how to program in Fortran. Use object-oriented programming to design efficient and maintainable code. Discover the power of Fortran for scientific programming. Fortran is a programming language that has been designed for scientific computing, allowing users to naturally express numerical problems. On this course, you’ll discover how to express your numerical problems as a Fortran program, exploring the power and versatility of this popular programming language.

Sep 27th 2021
5-12 Weeks
Decentralised Finance: Blockchain, Ethereum, and The Future of Banking (FutureLearn) FutureLearn
RMIT University

Decentralised Finance: Blockchain, Ethereum, and The Future of Banking (FutureLearn)

Explore the future of decentralised finance and grow your understanding of blockchain-powered cryptocurrencies. Learn the latest on decentralising areas of finance & blockchains like Ethereum. Decentralised Finance (DeFi) is changing the future of banking and finance. With the use of blockchain technology and cryptocurrencies, like Ethereum, DeFi doesn’t have to rely on traditional financial institutions.

Self Paced
4 Weeks