Skip main navigation

New offer! Get 30% off your first 2 months of Unlimited Monthly. Start your subscription for just £29.99 £19.99. New subscribers only. T&Cs apply

Find out more

Why MPI shared memory?

In this article we explain some usage areas for MPI shared memory, for example using shared memory for applications with "replicated data".
1.1
One main target are applications with “replicated data”: You may have some data in your MPI application that is not distributed, because every process needs this data to combine it with data in its subdomain. In those cases, you must deal with the fact that this replicated data has to be located everywhere and therefore basically fills up your memory. If you now have your replicated data only once per shared memory node as an alternative, then you can significantly reduce the total memory consumption. Having 4 cores on a node may not seem a lot, but if you have 128 cores on your shared memory node, then you could reduce the total memory consumption for this replicated data by a factor of 128.
55.9
And there are some applications that have a serious scaling problem
59.9
precisely because of such replicated data: you can’t get them to run on more processes because in principle these replicated data will overflow memory. Therefore, this is a prime application for the MPI-3.0 shared memory interface.

So what is MPI shared memory actually for? There are several usage areas: One is for applications with “replicated data”, another possibility is the reduction of communication overhead within shared memory nodes.

For further self-study, you can find the figure of the video together with the text in the pdf handout for weeks 3-4 on page 7.

This article is from the free online

One-Sided Communication and the MPI Shared Memory Interface

Created by
FutureLearn - Learning For Life

Reach your personal and professional goals

Unlock access to hundreds of expert online courses and degrees from top universities and educators to gain accredited qualifications and professional CV-building certificates.

Join over 18 million learners to launch, switch or build upon your career, all at your own pace, across a wide range of topic areas.

Start Learning now