libquo - Dynamic execution environments for coupled, thread-heterogeneous MPI+X applications

  •        8

QUO (as in "status quo") is a runtime library that aids in accommodating thread-level heterogeneity in dynamic, phased MPI+X applications comprising single- and multi-threaded libraries. Distribution tarballs can be found here.



Related Projects

Shared Genomics Project MPI Codebase


The Shared Genomics project has developed parallelised statistical applications (MPI/OpenMP) which can analyse large genomic data-sets containing thousands of Single Nucleotide Polymorphisms (SNP). The code is based on the popular PLINK SNP-analysis program.

Automatic Translation from OPENMP to MPI


We intend to develop a tool that can automatically convert programs written in OpenMP sharedmemory parallel applications to MPI for execution in distributed memory systems.This will make it convenient to code in OpenMP and deploy the application to distributed system under MPI.

Parallel Dwarfs

  •    CSharp

The Parallel Dwarfs project is a suite of 13 kernels (as VS projects in C++/C#/F#) parallelized using various technologies such as MPI, OpenMP, TPL, MPI.Net, etc. It also has a driver to run them, collect traces, and visualize the results using Vampir, Jumpshot, Xperf and Excel



UACluster2 is set of manuals and tools to create and manage high performance computing cluster based on Microsoft Hyper-V virtual machines. It needs Microsoft HPC Server 2008 (Microsoft HPC Server 2008 R2) as a basis of cluster creation.

ompi - Open MPI main development repository

  •    C

Open MPI main development repository

Hybrid OpenMP MPI Benchmark


HOMB is a simple benchmark based on a parallel iterative Laplace solver aimed at comparing the performance of MPI, OpenMP, and hybrid codes on SMP and multi-core based machines.

Kratos - Kratos Multiphysics (A

  •    C++

Kratos is free under BSD-4 license and can be used even in comercial softwares as it is. Many of its main applications are also free and BSD-4 licensed but each derived application can have its own propietary license. Kratos is multiplatform and available for Windows, Linux (several distros) and macOS.

MPI .Net


To create a .NET wrapper around MS-MPI implementation to enable C# developers to create High Performance Computing Applications. This wrapper is based on C++/CLI and Microsoft MPI stack in Compute Cluster V1. To build the project, Microsoft Compute Cluster Pack SDK is require...


  •    C

The STAR-MPI (Self-tuned adaptive routines for MPI collective routines) project is an on-going research and development effort to apply the adaptive software approach to develop efficient MPI collective routines across platforms and applications.

MPJ Express - Parallel Programming in Java

  •    Java

MPJ Express is an open source Java message passing library that allows application developers to write and execute parallel applications for multicore processors and compute clusters/clouds. It allows writing parallel Java applications using an MPI-like API.



ISP.NET is a code level verification tool for MPI programs. It includes a Visual Studio 2010 extension that allows for push button verification of user programs that are written in C, C++ and C#. ISP checks for deadlocks, assertion violations, and other MPI program issues.

MPI bindings for OpenGL

  •    C

mpiGL is an API that lets compute nodes output graphical results using the openGL language. A graphical server in the MPI universe holds the actual screen, and receives MPI messages packaging openGL commands from the compute slaves.


  •    C

MorphMPI simulates an ABI for MPI. Applications compiled using MorphMPI can easily be relinked to use any MPI implementation on a compatible OS-cpu combination.

MPI Python

  •    C

Distributed Parallel Programming for Python! This package builds on traditional Python by enabling users to write distributed, parallel programs based on MPI message passing primitives. General python objects can be messaged between processors. Ru


  •    C

BSPonMPI is an implementation of the BSPlib standard on top of MPI. Both MPI and BSPlib are API's of communication routines meant for parallel computing, but BSPlib is easier to learn and its performance easier to predict.

libtommath - LibTomMath is a free open source portable number theoretic multiple-precision integer library written entirely in C

  •    C

This is the git repository for LibTomMath, a free open source portable number theoretic multiple-precision integer (MPI) library written entirely in C. The develop branch contains the in-development version. Stable releases are tagged.

Speedy, Parallel Text Search Using MPI


Speedy, parallel text index and search using MPI


  •    C

We are using a large archive of newspaper stories(GigaWordCorpus) as input to a parallel MPI program, and produce from that a list of top R terms of varying lengths M through N that are especially interesting. The program is done in C using MPI.


  •    Ruby

MPIRuby is a Ruby version of the MPI supercomputing standard interface. It enables massively parallel and distributed algorithms to be written in a platform-independent manner suitable for large-scale computation-intensive experiments. MPI is the \quot;Mes


  •    C

The MPC (MultiProcessor Computing) framework provides a unified parallel runtime for clusters of large multiprocessor/multicore NUMA nodes. It supports mixed-mode programming with POSIX Threads, Intel TBB, OpenMP 2.5 and MPI 1.3 standards.