mpi-hs: 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.
This library mpi-hs
provides Haskell bindings for MPI. It is based
on ideas taken from
haskell-mpi,
Boost.MPI
for C++, and MPI for
Python.
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
serialized.
Note that the automated builds on Hackage will currently always fail since no system MPI library is present there. However, builds on Stackage should succeed -- if not, there is an error in this package.
[Skip to Readme]
Flags
Manual Flags
Name | Description | Default |
---|---|---|
mpich | Use MPICH | Disabled |
mvapich | Use MVAPICH2 | Disabled |
openmpi | Use OpenMPI | Enabled |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- mpi-hs-0.7.3.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.1.0.1, 0.3.0.0, 0.3.1.0, 0.4.0.0, 0.4.1.0, 0.5.1.1, 0.5.1.2, 0.5.2.0, 0.5.3.0, 0.6.0.0, 0.7.0.0, 0.7.1.0, 0.7.1.2, 0.7.2.0, 0.7.3.0, 0.7.3.1 |
---|---|
Dependencies | base (>=4 && <5), bytestring, monad-loops, mpi-hs [details] |
License | Apache-2.0 |
Copyright | 2018, 2019, 2020, 2023, 2024 Erik Schnetter <schnetter@gmail.com>, 2024 Phillip Seeber Phillip Seeber <phillip.seeber@googlemail.com> |
Author | Erik Schnetter <schnetter@gmail.com> |
Maintainer | Erik Schnetter <schnetter@gmail.com>, Phillip Seeber <phillip.seeber@googlemail.com> |
Category | Distributed Computing |
Home page | https://github.com/eschnett/mpi-hs#readme |
Bug tracker | https://github.com/eschnett/mpi-hs/issues |
Source repo | head: git clone https://github.com/eschnett/mpi-hs |
Uploaded | by phillipseeber at 2024-10-16T14:19:37Z |
Distributions | LTSHaskell:0.7.2.0, Stackage:0.7.3.1 |
Reverse Dependencies | 3 direct, 0 indirect [details] |
Executables | version, example2, example1 |
Downloads | 5987 total (68 in the last 30 days) |
Rating | 2.0 (votes: 1) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user Build status unknown [no reports yet] |