MPI permet donc de compiler et d'executer un programme parallele ou distribue. Les processus de ce programme sont definis statiquement. Cette librairie a pour but principal de definir un ensemble de primitives de communication portables sur un grand nombre de machines. C'est son merite principal. Un certain nombre d'extensions facilitent l'acces a des fonctions specifiques comme le graphisme, le debogage ou l'analyse.
On pourra cependant noter que :
- Les executables generes sont relativement gros (450 Ko en moyenne pour les exemples presentes plus haut).
- Certaines procedures ont un profil exotique.
- Enfin, on peut se poser la question de la pertinence de MPI face a de nouvelles bibliotheques comme les classes JAVA gerant les communications ou les programmes repartis. JAVA garantit en effet une vraie portabilite sous un aspect totalement different de celui de MPI (par le biais de la compilation pour une machine virtuelle JAVA), garantit des mecanismes dynamiques de parallelisme (par le biais des processus legers). Cette technologie permet egalement d'utiliser des bibliotheques specialises et standardisees (graphisme, multimedia, base de donees...) en plus de celles dediees aux calculs distribues.