High-Performance Deterministic Concurrency using Lingua Franca

01/06/2023
by   Christian Menard, et al.
0

Actor frameworks and similar reactive programming techniques are widely used for building concurrent systems. They promise to be efficient and scale well to a large number of cores or nodes in a distributed system. However, they also expose programmers to nondeterminism, which often makes implementations hard to understand, debug, and test. The recently proposed reactor model is a promising alternative that enables efficient deterministic concurrency. In this paper, we show that determinacy does neither imply a loss in expressivity nor in performance. To show this, we evaluate Lingua Franca (LF), a reactor-oriented coordination language that equips mainstream programming languages with a concurrency model that automatically takes advantage of opportunities to exploit parallelism that do not introduce nondeterminism. Our implementation of the Savina benchmark suite demonstrates that, in terms of execution time, the runtime performance of LF programs even exceeds popular and highly optimized actor frameworks. We compare against Akka and CAF, which LF outperforms by 1.86x and 1.42x, respectively.

READ FULL TEXT
research
02/01/2019

Distributed Reactive Programming for Reactive Distributed Systems

Context: The term reactivity is popular in two areas of research: progra...
research
06/21/2023

Tackling the Awkward Squad for Reactive Programming: The Actor-Reactor Model

Reactive programming is a programming paradigm whereby programs are inte...
research
10/27/2022

A Survey on Parallelism and Determinism

Parallelism is often required for performance. In these situations an ex...
research
05/16/2018

Efficient and Deterministic Record & Replay for Actor Languages

With the ubiquity of parallel commodity hardware, developers turn to hig...
research
01/23/2023

Modal Reactors

Complex software systems often feature distinct modes of operation, each...
research
10/30/2020

Advanced Join Patterns for the Actor Model based on CEP Techniques

Context: Actor-based programming languages offer many essential features...
research
07/12/2021

A Scalable Actor-based Programming System for PGAS Runtimes

PGAS runtimes are well suited to irregular applications due to their sup...

Please sign up or login with your details

Forgot password? Click here to reset