Parallel Virtual Machine
You might want to compile your own version and set your own PVM_ROOT variable, it builds pretty clean out of the box even with MIPS Pro.
Suggestion - mixing SGI and other architectures
PVM has one main difference with MPI. MPI programs tend to make the most of each piece of hardware, usually a uniform architecture. A collection of Playstation3s connected by a gigabit switch is a good MPI machine because every last cycle can be wrung out out of the SPU part of the Cell processors. PVM on the other hand can work with heterogeneous network architectures, a collection of SGIs, SUNs and BSD machines can all run the same parallel program and exchange data. Normally there is a $ARCH environment variable which determines the build/execution path, normally set from uname. Normally projects are built with each architecture in the path.. $PROJ_TOP/$ARCH/bin might be $PROJ_TOP/IRIX/bin and $PROJ_TOP/SUNOS/bin ...
It is possible to rank machines so that the faster machines get a higher proportion of processes run on them, quad cpu could get a twice ranking of a dual or a machine running at twice the MHz of another could get twice the ranking.
- Message Passing Toolkit: PVM Programmer's Guide (document number: 007-3686-005)
- "Handbook on Parallel and Distributed Processing, Springer, Germany, ISBN 3-540-66441-6
- This is one of the most comprehensive PVM books, Hughes and Hughes, "Parallel and Distributed Programming using C++", Addison-Wesley ISBN 0-13-101376-9
- PVM: Parallel Virtual Machine, "A Users guide and Tutorial for Networked Parallel Computing", Geist et al., ISBN 0-262-57108-0.
Share your opinion