Solved

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

Posted on 2011-09-06
3
243 Views
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?
Thanks,

Ben
0
Comment
Question by:AivsCoder
3 Comments
 
LVL 8

Accepted Solution

by:
ssnkumar earned 65 total points
Comment Utility
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: http://www.daniweb.com/software-development/c/code/334470/1428830#post1428830

Refer the "Practical MPI Programming" for more details at: http://www.redbooks.ibm.com/abstracts/sg245380.html

Read the MPI standard at: http://www.mcs.anl.gov/research/projects/mpi/mpi-standard/mpi-report-1.1/mpi-report.htm

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

Assisted Solution

by:AJRDev
AJRDev earned 60 total points
Comment Utility
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.
0
 

Author Closing Comment

by:AivsCoder
Comment Utility
Thanks. Useful.
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Suggested Solutions

Companies keep a much closer eye on costs today, so changing to new Technology – Microsoft Office 365 is the smartest move to take.
Exchange server is not supported in any cloud-hosted platform (other than Azure with Azure Premium Storage).
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use for-loops in the C programming language.
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.

771 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now