<P> MPI - 3 includes new Fortran 2008 bindings, while it removes deprecated C++ bindings as well as many deprecated routines and MPI objects . </P> <P> MPI is often compared with Parallel Virtual Machine (PVM), which is a popular distributed environment and message passing system developed in 1989, and which was one of the systems that motivated the need for standard parallel message passing . Threaded shared memory programming models (such as Pthreads and OpenMP) and message passing programming (MPI / PVM) can be considered as complementary programming approaches, and can occasionally be seen together in applications, e.g. in servers with multiple large shared - memory nodes . </P> <P> The MPI interface is meant to provide essential virtual topology, synchronization, and communication functionality between a set of processes (that have been mapped to nodes / servers / computer instances) in a language - independent way, with language - specific syntax (bindings), plus a few language - specific features . MPI programs always work with processes, but programmers commonly refer to the processes as processors . Typically, for maximum performance, each CPU (or core in a multi-core machine) will be assigned just a single process . This assignment happens at runtime through the agent that starts the MPI program, normally called mpirun or mpiexec . </P> <P> MPI library functions include, but are not limited to, point - to - point rendezvous - type send / receive operations, choosing between a Cartesian or graph - like logical process topology, exchanging data between process pairs (send / receive operations), combining partial results of computations (gather and reduce operations), synchronizing nodes (barrier operation) as well as obtaining network - related information such as the number of processes in the computing session, current processor identity that a process is mapped to, neighboring processes accessible in a logical topology, and so on . Point - to - point operations come in synchronous, asynchronous, buffered, and ready forms, to allow both relatively stronger and weaker semantics for the synchronization aspects of a rendezvous - send . Many outstanding operations are possible in asynchronous mode, in most implementations . </P>

What is the purpose (functions) of mpi run time environment
find me the text answering this question