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

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
Understanding Computer Systems (FutureLearn) FutureLearn
Raspberry Pi Foundation

Understanding Computer Systems (FutureLearn)

Understand how the components of a computer system interact with each other on this online course for computing teachers. Learn what really happens when you turn a computer on. Understanding how a computer works after you press the power button is key to working with technology effectively. On this course, you will explore what happens inside the machine and learn how computers turn inputs into outputs.

Nov 1st 2021
3 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
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
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.

Sep 14th 2026
4 Weeks
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 Digital Transformation: Understand and Manage Digital Transformation in the Workplace (FutureLearn) FutureLearn
Media Design School

Introduction to Digital Transformation: Understand and Manage Digital Transformation in the Workplace (FutureLearn)

Improve your skills and knowledge of digital transformation and how to manage the process of technological change. Build skills for the future work landscap. In this course from the Media Design School, you’ll explore the future of the work landscape and how technology continues to redefine it through the process of digital transformation.

Jun 27th 2022
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
Career Skills for the 2020s: Navigating the Online World of Work (FutureLearn) FutureLearn
Coventry University

Career Skills for the 2020s: Navigating the Online World of Work (FutureLearn)

Find your purpose and identify the career skills you need to upskill in your sector or to seek a new job online. Develop the digital skills employers are looking for in the 2020s. In this rapidly changing world, it’s important that you’re confident about working online and embracing technology in your professional life. On this course, you’ll assess your strengths and weaknesses and explore the skills you need to build to progress in work or to seek a new job in the 2020s.

Jan 16th 2023
4 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
Revolucionar la cadena alimentaria mediante la tecnología (FutureLearn) FutureLearn
Queen’s University Belfast,EIT Food,EIT

Revolucionar la cadena alimentaria mediante la tecnología (FutureLearn)

Explore cómo la tecnología y la digitalización pueden modificar el funcionamiento del sistema alimentario. Descubra cómo la tecnología podría revolucionar el sector alimentario. La calidad y la seguridad de los alimentos se ven cada vez más amenazadas, dado que los recursos naturales se están viendo desbordados por el cambio climático, el hambre y un crecimiento explosivo de la población mundial.

Jan 3rd 2022
5-12 Weeks
Data Visualisation with Tableau Fundamentals (FutureLearn) FutureLearn
FutureLearn

Data Visualisation with Tableau Fundamentals (FutureLearn)

Learn the fundamentals of data visualisation – from core components to interactive elements. Want to create meaningful data visualisations that fuel decision-making and growth within your business? This course teaches you the basics – from individual elements and relationships through to data preparation in Tableau. You’ll learn design theories and how to identify important dashboard elements before moving on to hands-on exercises.

May 23rd 2022
4 Weeks