MessagePassingInterface (MPI) is a standard for message passing between tasks running on one or more processors. See http://www-unix.mcs.anl.gov/mpi/ for more information. There are several implementations of this standard even for e.g. Linux. There are language implementations for the CeeLanguage, FortranLanguage and RubyLanguage (MPI Ruby at http://www-unix.mcs.anl.gov/mpi/mpi_ruby/). There is an object oriented CeePlusPlus binding - see ObjectOrientedMessagePassingInterface. ---- '''Books''' * ParallelScientificComputingInCppAndMpi * PatternsForParallelProgramming ---- Compare with ParallelVirtualMachine, OpenMultiProcessing (OpenMP) See also InterProcessCommunication, ParallelProgrammingModel ---- See CudaMpi for an extension to cover data transfer between GeneralPurposeGraphicsProcessUnits (GPGPUs) using the ComputeUnifiedDeviceArchitecture (CUDA). ---- CategoryCee CategoryFortran CategoryRuby