An Auto-Parallelizer for Distributed Computing in Haskell

09/17/2023
by   Yuxi Long, et al.
0

One of the main challenges in distributed computing is building interfaces and APIs that allow programmers with limited background in distributed systems to write scalable, performant, and fault-tolerant applications on large clusters. In this demonstration, we designed and implemented a Haskell auto-parallelizer with a simple yet powerful interface by taking advantage of the default purity of Haskell functions. Finally, we benchmarked our implementation on a set of examples to illustrate the potential for future work in this direction.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/22/2021

Towards Offloadable and Migratable Microservices on Disaggregated Architectures: Vision, Challenges, and Research Roadmap

Microservice and serverless computing systems open up massive versatilit...
research
01/10/2020

RMWPaxos: Fault-Tolerant In-Place Consensus Sequences

Building consensus sequences based on distributed, fault-tolerant consen...
research
04/30/2018

Performance Evaluation of an Algorithm-based Asynchronous Checkpoint-Restart Fault Tolerant Application Using Mixed MPI/GPI-2

One of the hardest challenges of the current Big Data landscape is the l...
research
10/25/2018

Quantum Advantage for the LOCAL Model in Distributed Computing

There are two central models considered in (fault-free synchronous) dist...
research
06/09/2021

HyCA: A Hybrid Computing Architecture for Fault Tolerant Deep Learning

Hardware faults on the regular 2-D computing array of a typical deep lea...
research
10/04/2020

Distributed Constructions of Dual-Failure Fault-Tolerant Distance Preservers

Fault tolerant distance preservers (spanners) are sparse subgraphs that ...
research
12/31/2021

Statistical scalability and approximate inference in distributed computing environments

Harnessing distributed computing environments to build scalable inferenc...

Please sign up or login with your details

Forgot password? Click here to reset