If you are using Network.Transport
in your application, or if you are writing (or interested in writing) Network.Transport
support for another protocol, please add a brief description to this page so that we can coordinate the efforts.
Haskell Distributed Parallel Haskell is a shallowly embedded parallel extension of Haskell that supports high-level semi-explicit parallelism. HdpH has a distributed memory model, that manages computations on more than one multicore node. In addition high-level semi-explicit parallelism is supported by providing spark
for implicit task placement, alleviating the job of dynamic load management to HdpH. Explicit task placement is supported with the pushTo
primitive. Lastly, HdpH supports the node <-> node transfer of polymorphic closures. This enables the definition of both evaluation strategies and algorithmic skeletons by using a small set of polymorphic coordination primitives.
The communication layer in HdpH adopts the Network.Transport.TCP
realization of the network-transport API. The HdpH implementation is on hackage and is open source on GitHub.
The CCI project is an open-source communication interface that aims to provide a simple and portable API, high performance, scalability for the largest deployments, and robustness in the presence of faults. It is developed and maintained by a partnership of research, academic, and industry members.
Parallel Scientific is contributing with CCI development and promoting its adoption as a portable API. We have developed Haskell bindings for the CCI alpha implementation, and are keen to have a CCI backend for Cloud Haskell as resources allow.