https://github.com/adeboyed/parliament
A Cambridge Computer Science part II dissertation building a general-purpose cluster computing framework for OCaml
https://github.com/adeboyed/parliament
Last synced: about 1 year ago
JSON representation
A Cambridge Computer Science part II dissertation building a general-purpose cluster computing framework for OCaml
- Host: GitHub
- URL: https://github.com/adeboyed/parliament
- Owner: adeboyed
- Created: 2018-10-12T09:41:20.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-02-25T11:58:16.000Z (over 6 years ago)
- Last Synced: 2025-02-01T18:35:48.131Z (over 1 year ago)
- Language: Rust
- Homepage:
- Size: 1.11 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Parliament
A Cambridge Computer Science Part II dissertation building a general-purpose cluster computing framework for OCaml.
Parliament is a data-parallel distributed library, where the architecture encourages developers to write parallelised workloads, while not restricting developers from writing whatever function they want.

There are 3 main parts to this system:
1. **Prime Minister**: Cluster master, Rust executable that communicates between the users and workers, handles fault-tolerance and task assignment.
2. **Parliament**: OCaml library, which handles data marshalling and communication with the cluster.
3. **Member of Parliament**: Cluster worker, Rust executable that communicates with the Prime Minister, that wraps around the OCaml executable and runs closures in the OCaml executable.
More information can be found in my [dissertation](dissertation.pdf).