mpi-hs-cereal: MPI bindings for Haskell
MPI (the Message Passinag Interface) is a widely used standard for distributed-memory programming on HPC (High Performance Computing) systems. MPI allows exchanging data (_messages_) between programs running in parallel. There are several high-quality open source MPI implementations (e.g. MPICH, MVAPICH, OpenMPI) as well as a variety of closed-source implementations. These libraries can typically make use of high-bandwidth low-latency communication hardware such as InfiniBand.
mpi-hs provides Haskell bindings for MPI. It is based
on ideas taken from
for C++, and MPI for
mpi-hs provides two API levels: A low-level API gives rather
direct access to the actual MPI API, apart from certain "reasonable"
mappings from C to Haskell (e.g. output arguments that are in C
stored via a pointer are in Haskell regular return values). A
high-level API simplifies exchanging arbitrary values that can be
Note that the automated builds on [Hackage](http://hackage.haskell.org) will currently always fail since no system MPI library is present there. However, builds on [Stackage](https://www.stackage.org) should succeed -- if not, there is an error in this package.
[Skip to Readme]
|Dependencies||base (>=4 && <5), bytestring, cereal, monad-loops, mpi-hs (>=0.7.0.0), mpi-hs-cereal [details]|
|Author||Erik Schnetter <email@example.com>|
|Maintainer||Erik Schnetter <firstname.lastname@example.org>|
|Source repo||head: git clone https://github.com/eschnett/mpi-hs-cereal|
|Uploaded||by eschnett at 2020-04-18T22:04:52Z|
|Distributions||LTSHaskell:0.1.0.0, NixOS:0.1.0.0, Stackage:0.1.0.0|
|Executables||version, example2, example1|
|Downloads||309 total (15 in the last 30 days)|
|Rating||(no votes yet) [estimated by Bayesian average]|
|Status||Docs uploaded by user
Build status unknown [no reports yet]