Could someone please give me a simple overview of what MPI is?

Posted on 2011-09-06
Last Modified: 2012-06-27
So I understand that MPI will allow a user to launch one program to run on 10 computers from a master computer.

Q. Is MPI something that one can integrate into an existing developed application?
Q. So how can I connect another computer? Does the extra computer need to be on a lan? or could it be over the internet?

Question by:AivsCoder

Accepted Solution

ssnkumar earned 65 total points
ID: 36493454
I am assuming that, you are asking about "Message Passing Interface".

> Q. Is MPI something that one can integrate into an existing developed application?
You have to develop your application using MPI standard.
MPI is not a plugin kind of a thing - so, you cannot integrate it into an existing developed application.

> Q. So how can I connect another computer? Does the extra computer need to be on a lan? or could it be
> over the internet?
You will need to use socket library (or similar implementation) calls to connect 2 computers.
It doesn't matter whether the computers are on LAN, WAN or Internet.
Each of them should have a network Interface, an IP address which is reachable from the other computer.

You can see how MPI is used to parallelize matrix multiplication here:

Refer the "Practical MPI Programming" for more details at:

Read the MPI standard at:

Hope this will give you a good entry to the subject.

Assisted Solution

AJRDev earned 60 total points
ID: 36497261
Basically, you need:

1. A collection (cluster) of machines.
2. An MPI runtime environment on each one.
3. An API (provided by the runtime) to code against, and make use of its functionality.

Application code really needs to be architected from the ground up as parallel and distributed as you will need to decide which operations will be handed off as seperate processes, and how you will recieve the results.

Author Closing Comment

ID: 36814419
Thanks. Useful.

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Url for adobe cloud 13 140
Cloud Infrastructure Security 3 102
Dropbox 3 82
What's the Difference Between a VI, the Command Prompt and a Shell 7 108
Meet the world's only “Transparent Cloud™” from Superb Internet Corporation. Now, you can experience firsthand a cloud platform that consistently outperforms Amazon Web Services (AWS), IBM’s Softlayer, and Microsoft’s Azure when it comes to CPU and …
Most of the applications these days are on Cloud. Cloud is ubiquitous with many service providers in the market. Since it has many benefits such as cost reduction, software updates, remote access, disaster recovery and much more.
This Micro Tutorial will explain how to export DynamoDB tables in Amazon Web Services.
Internet Business Fax to Email Made Easy - With eFax Corporate (, you'll receive a dedicated online fax number, which is used the same way as a typical analog fax number. You'll receive secure faxes in your email, fr…

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question