CAF - the C++ Actor Framework for Scalable and Resource-Efficient Applications

Dominik Charousset, Raphael Hiesgen, T. Schmidt
{"title":"CAF - the C++ Actor Framework for Scalable and Resource-Efficient Applications","authors":"Dominik Charousset, Raphael Hiesgen, T. Schmidt","doi":"10.1145/2687357.2687363","DOIUrl":null,"url":null,"abstract":"The actor model of computation has gained significant popularity over the last decade. Its high level of abstraction combined with its flexibility and efficiency makes it appealing for large applications in concurrent and distributed regimes. In this paper, we report on our work of designing and building CAF, the \"C++ Actor Framework\". CAF targets at providing an extremely scalable native environment for building high-performance concurrent applications and distributed systems. Based on our previous library tt libcppa, CAF significantly extends its scopes of application and operation, as well as the range of scalability. The particular contributions of this paper are threefold. First we present the design and implementation of a type-safe messaging interface for actors that rules out a category of runtime errors and facilitates robust software design. Second we introduce a runtime inspection shell as a first building block for convenient debugging of distributed actors. Finally we enhance the scheduling facilities and improve scaling up to high numbers of concurrent processors. Extensive performance evaluations indicate ideal runtime behaviour for up to 64 cores at very low memory footprint. In these tests, CAF clearly outperforms competing actor environments.","PeriodicalId":436138,"journal":{"name":"Proceedings of the 4th International Workshop on Programming based on Actors Agents & Decentralized Control","volume":"16 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-10-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"42","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 4th International Workshop on Programming based on Actors Agents & Decentralized Control","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2687357.2687363","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 42

Abstract

The actor model of computation has gained significant popularity over the last decade. Its high level of abstraction combined with its flexibility and efficiency makes it appealing for large applications in concurrent and distributed regimes. In this paper, we report on our work of designing and building CAF, the "C++ Actor Framework". CAF targets at providing an extremely scalable native environment for building high-performance concurrent applications and distributed systems. Based on our previous library tt libcppa, CAF significantly extends its scopes of application and operation, as well as the range of scalability. The particular contributions of this paper are threefold. First we present the design and implementation of a type-safe messaging interface for actors that rules out a category of runtime errors and facilitates robust software design. Second we introduce a runtime inspection shell as a first building block for convenient debugging of distributed actors. Finally we enhance the scheduling facilities and improve scaling up to high numbers of concurrent processors. Extensive performance evaluations indicate ideal runtime behaviour for up to 64 cores at very low memory footprint. In these tests, CAF clearly outperforms competing actor environments.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
用于可伸缩和资源高效应用程序的c++ Actor框架
actor计算模型在过去十年中获得了显著的普及。它的高抽象水平加上它的灵活性和效率使得它对并发和分布式体系中的大型应用程序很有吸引力。在本文中,我们报告了我们设计和构建CAF (c++ Actor框架)的工作。CAF的目标是为构建高性能并发应用程序和分布式系统提供一个高度可伸缩的本地环境。在我们之前的库ttlibcppa的基础上,CAF大大扩展了它的应用范围和操作范围,以及可扩展性的范围。本文的特殊贡献有三个方面。首先,我们为参与者提供了一个类型安全的消息传递接口的设计和实现,该接口可以排除一类运行时错误并促进健壮的软件设计。其次,我们引入了一个运行时检查shell作为第一个构建块,用于方便地调试分布式参与者。最后,我们增强了调度功能,并改进了对高并发处理器数量的扩展。广泛的性能评估表明,在非常低的内存占用下,最多64核的理想运行时行为。在这些测试中,CAF明显优于与之竞争的参与者环境。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
CAF - the C++ Actor Framework for Scalable and Resource-Efficient Applications Event-Based Analysis of Timed Rebeca Models using SQL Multiple Inheritance in AgentSpeak(L)-Style Programming Languages Fault Tolerant Distributed Computing Using Asynchronous Local Checkpointing Efficient TCTL Model Checking Algorithm for Timed Actors
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1