|
Authors:
- Javier Fernández Baldomero
- Mancia Anguita
|
What is MPITB?:
 |
PC MATLAB Linux users in a cluster with several
PCs can use MPITB in order to call MPI library
routines from within the MATLAB interpreter.
Depending on your licensing scheme
(node/user-based), additional licenses might
be required to spawn additional MATLAB processes
on other cluster nodes.
|
 |
Processes can be spawned and arranged in
topologies, MATLAB variables can be sent/recvd,
etc. |
 |
Due to MATLAB's eval facility, commands for
remote execution may be passed as strings to the
desired MATLAB computing
instance, and the result may be sent back
to the MATLAB host
instance. Several protocols are
suggested in the startups subdir. |
 |
Some citations
to MPITB have been collected here
(papers, conferences, labs, etc.) Last update
Dec'07.
|
 |
(22/Mar/05) MPITB
precompiled for MATLAB R14SP1 and LAM-7.1.1.
Reworked example subdirs PingPong, Pi, Spawn and
Wavelets. Revised tutorial
and readme
files.
|
|
Community:
- Last users search & update Dec'07
- Time-reversed list of things that people have done
with MPITB:
 |
(5/Dec/07) Samuel has published another paper
using MPITB. |
 |
(11/Sept/07)
Just noticed that Brad Skinner (et al.) had
published this paper
in LNCIS (Lecture Notes in Control and Information
Sciences).
|
 |
(18/Jul/07) Samuel Pichardo has ported the
original Linux version to CentOS 5 X64.
He has also published
a paper
using MPITB in PMB
(Physics in
Medicine and Biology, see MPITB papers
above). |
 |
(Mar/07) ARC Wiki MPITB page. |
 |
(Jan/07) Wa-Kun's
new
web is http://www.mcwakun.com
and his Windows/MPICH version is available in the
new downloads page http://www.mcwakun.com/download.htm. |
 |
(Sept/06)
Just noticed this paper
published in IEICE Trans. Fundamentals.
|
 |
(22/Dec/05) Wa-Kun Lam has
ported the
original Linux/LAM version to Windows/MPICH.
(original URL broken, see 2 lines above for new
URL).
|
|
Sites with links to MPITB:
|
Features:
 |
MEX bindings for MPI-1.2 calls, except for
MPI_Pcontrol, MPI_Op_create, MPI_Op_free, and
those related to derived datatypes (MPI_Type_*). |
 |
MEX bindings for some MPI-2.0 calls: the Info
object (MPI_Info_*) and Spawn
(MPI_Comm_spawn[_multiple], _Comm_get_parent,
_Open/Close_port, _Comm_accept/connect/disconnect,
_[Un]Publish/Lookup_name). |
 |
Extensive "Tutorial script" for learning and
getting acquainted to MPI bindings quick and
easily. No need to learn any compilation tools or
environments. You'll master MPI if you
proceed thru the tutorial copying-and-pasting
commands to the MATLAB window(s) and looking at
the output. |
 |
Help files for all interfaced MPI calls,
extracted from the LAM/MPI man pages, which in
turn were based on the MPICH man pages (thanks to
all) |
 |
Source code self-documented with error
messages/comments |
 |
Reworked example subdirs: PingPong, Pi, Spawn,
Wavelets
|
 |
Useful for teaching LAM/MPI. |
 |
Useful for research, due to MATLAB's rapid
prototyping capabilities. |
|
Requirements:
 |
Tested with LAM-7.1.1 dynamically
linked. You still may retouch the Makefiles in the
source and try to link against the RedHat-provided
(static) LAM rpm package/libraries, but that's
neither tested nor recommended. |
 |
Tested under Athlon MP 2400+ Linux Fedora Core 3),
glibc-2.3.3 compiling environment (gcc
3.4.3), MATLAB 7.0.1 R14SP1. |
 |
Needs a working LAM 7.1.x installation (shared
libraries). For those willing to know, the LAM
configure switches used for testing were:
./configure -prefix=/<myhomedir>/lam-7.1.1 \ --enable-shared --disable-static \ --without-fc --without-mpi2cpp --> --with-threads=posix --with-trillium --with-modules
|
 |
Needs a working MATLAB 7 installation on each
node (on which you want to spawn a MATLAB
process). Depending on your licensing scheme
(user/node-based) this requirement could be
relaxed.
|
 |
Thanks to Peter Boettcher and Sebastien
Goasguen, who helped in several ways to the
upgrading to R13. |
 |
Please check the MD5 sum before installing. |
Downloads:
Installing:
- A shared LAMHOME is strongly advised.
- A shared MATLABHOME is strongly advised. The sysop
can then install the toolbox once for general use,
under $MATLABHOME/toolbox.
- If not, make sure "matlab" is in your search path on
each node.
- A shared HOME is strongly advised. The user can then
install the toolbox once for all nodes, under
$HOME/matlab. This is the preferred option.
- If neither condition is satisfied, you may need to
play with your .cshrc, .bashrc, run command scripts,
or MPI_Comm_spawn_multiple.
- Gunzip & untar the toolbox.
- Adjust your MATLAB startup to run the provided
startup script.
- Read the README
file to check whether you forgot something.
- lamboot the LAM, run matlab, and work through the TUTORIAL to
test the toolbox.
- Quit MATLAB, and halt LAM
page built February
2000 |
Last updated: Jan 9th
2008 |
|