arXivDaily arXiv每日学术速递 周一至周五更新
arXiv周末暂无论文更新,休息一下吧,周末愉快~~
arXiv 2301.02444cs.PLcs.DCcs.PF
收藏

使用通用语言的高性能确定性并发

High-Performance Deterministic Concurrency using Lingua Franca

Christian Menard, Marten Lohstroh, Soroush Bateni, Matthew Chorlian, Arthur Deng, Peter Donovan, Clément Fournier, Shaokai Lin, Felix Suchert, Tassilo Tanneberg… 展开作者

Christian Menard, Marten Lohstroh, Soroush Bateni, Matthew Chorlian, Arthur Deng, Peter Donovan, Clément Fournier, Shaokai Lin, Felix Suchert, Tassilo Tanneberger, Hokeun Kim, Jeronimo Castrillon, Edward A. Lee

摘要:

Actor框架和类似的反应式编程技术被广泛用于构建并发系统。它们承诺是高效的,并且可以很好地扩展到分布式系统中的大量核心或节点。然而,它们也使程序员暴露于不确定性,这通常使实现难以理解、调试和测试。最近提出的反应器模型是一个很有前途的替代方案,使高效的确定性并发。在本文中,我们表明,确定性并不意味着损失的表现力,也没有在性能。为了表明这一点,我们评估的通用语言(LF),面向反应器的协调语言,配备主流程序设计语言的并发模型,自动利用机会,利用并行不引入非确定性。我们对Savina基准测试套件的实现表明,在执行时间方面,LF程序的运行时性能甚至超过了流行的高度优化的Actor框架。我们与Akka和CAF进行了比较,LF的表现分别为1.86倍和1.42倍。

英文摘要:

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.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑