MPI: A Short Introduction to One-sided Communication (FutureLearn)

MPI: A Short Introduction to One-sided Communication (FutureLearn)

Learn the details of one-sided communication in MPI programming. Discover the advantages to one-sided communication in parallel programming. Message Passing Interface (MPI) is a key standard for parallel computing architectures. On this course, you’ll learn the essential concepts of one-sided communication in MPI, as well as the advantages of the MPI communication model.

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

You’ll learn the details of how exactly MPI works, as well how to use Remote Memory Access (RMA) routines. Examples, exercises, and tests will be used to help you learn and explore.

Syllabus

Week 1: Overview and the principles of One-Sided MPI Communication
Week 2: Details and examples of One-Sided MPI communication

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
  • Design your program using methods of MPI communication that prevent deadlocks and ensure the correctness of the program
  • Improve scalability of your program by substituting non-scalable solutions with scalable one-sided approaches

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.
For users of screen readers, the text of the course contains all necessary information, and images are additional illustrations. Unfortunately the quizzes in this course cannot be made screen-reader accessible, however learners can achieve all learning outcomes and understand all the content without completing these.

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

Related Courses

Parallel programming (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Parallel programming (Scala 2 version) (Coursera)

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm. We'll start the nuts and bolts how to effectively parallelize familiar collections operations, and we'll build up to parallel collections, a production-ready data parallel collections library available in the Scala standard library.

Sep 7th 2026
4 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
Design and Prototype Embedded Computer Systems (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Design and Prototype Embedded Computer Systems (FutureLearn)

Discover embedded system design and work your way through the product design lifecycle. Supported by Google. Learn how to design your own embedded system. On this course from the Raspberry Pi Foundation, you will explore how embedded systems are used in the world around us. You will learn what makes an embedded system different from a general purpose system (such as a PC) and discover how embedded systems are specialised for a particular use case.

Nov 1st 2021
3 Weeks
Parallel programming (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Parallel programming (Coursera)

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm.

Aug 17th 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
Parallel Programming Concepts (openHPI) OpenHPI
Hasso-Plattner-Institut

Parallel Programming Concepts (openHPI)

The openHPI online course “Parallel Programming Concepts” presents relevant theoretical and practical foundations for parallel programming. We show crucial theoretical ideas such as semaphores and actors, the architecture of modern parallel hardware, different programming models such as task parallelism, message passing and functional programming, and several patterns and best practices.

Self Paced
Self-Paced
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
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
One-Sided Communication and the MPI Shared Memory Interface (FutureLearn) FutureLearn
Partnership for Advanced Computing in Europe - PRACE

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.

Feb 28th 2022
4 Weeks
Introduction to Databases and SQL (FutureLearn) FutureLearn
Raspberry Pi Foundation,National Centre for Computing Education

Introduction to Databases and SQL (FutureLearn)

Discover how databases work and how to use SQL in this introductory course. Supported by Google. Learn about databases and how to use SQL to search and manipulate data. On this course from the Raspberry Pi Foundation you’ll learn what databases are and why we use them, exploring how to use SQL to search and manipulate data.

Jan 2nd 2023
3 Weeks
Digital Skills: Artificial Intelligence (FutureLearn) FutureLearn
Accenture

Digital Skills: Artificial Intelligence (FutureLearn)

Discover the ability of artificial intelligence to transform your everyday life and reshape the way you work. Identify the skills you will need to work with AI in the future. Artificial intelligence (AI) is used in many businesses to improve the way employees work. On this course, you will learn more about the past, present and future of artificial intelligence and explore its potential in the workplace.

Self Paced
3 Weeks
Understanding Maths and Logic in Computer Science (FutureLearn) FutureLearn
Raspberry Pi Foundation

Understanding Maths and Logic in Computer Science (FutureLearn)

Improve your understanding and ability to teach maths and logic in computing while building elements of an escape room. Become more familiar with maths and logic in computer science. The mathematical aspects of computer science can be difficult to understand and teach. On this course, you will be introduced to maths and logic in computing in an engaging way.

Nov 1st 2021
3 Weeks