OpenABL: A Domain-Specific Language for Parallel and Distributed Agent-Based Simulations

被引:11
|
作者
Cosenza, Biagio [1 ]
Popov, Nikita [1 ]
Juurlink, Ben [1 ]
Richmond, Paul [2 ]
Chimeh, Mozhgan Kabiri [2 ]
Spagnuolo, Carmine [3 ]
Cordasco, Gennaro [3 ]
Scarano, Vittorio [3 ]
机构
[1] TU Berlin, Berlin, Germany
[2] Univ Sheffield, Sheffield, S Yorkshire, England
[3] Univ Salerno, Salerno, Italy
来源
基金
英国工程与自然科学研究理事会;
关键词
EXPERIENCES; FLAME;
D O I
10.1007/978-3-319-96983-1_36
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Agent-based simulations are becoming widespread among scientists from different areas, who use them to model increasingly complex problems. To cope with the growing computational complexity, parallel and distributed implementations have been developed for a wide range of platforms. However, it is difficult to have simulations that are portable to different platforms while still achieving high performance. We present OPENABL, a domain-specific language for portable, high-performance, parallel agent modeling. It comprises an easy-to-program language that relies on high-level abstractions for programmability and explicitly exploits agent parallelism to deliver high performance. A source-to-source compiler translates the input code to a high-level intermediate representation exposing parallelism, locality and synchronization, and, thanks to an architecture based on pluggable backends, generates target code for multi-core CPUs, GPUs, large clusters and cloud systems. OPENABL has been evaluated on six applications from various fields such as ecology, animation, and social sciences. The generated code scales to large clusters and performs similarly to hand-written target-specific code, while requiring significantly fewer lines of codes.
引用
下载
收藏
页码:505 / 518
页数:14
相关论文
共 50 条
  • [21] CAOS: A domain-specific language for the parallel simulation of cellular automata
    Grelck, Clemens
    Penczek, Frank
    Trojahner, Kai
    PARALLEL COMPUTING TECHNOLOGIES, PROCEEDINGS, 2007, 4671 : 410 - 417
  • [22] Relaxing Synchronization Constraints in Distributed Agent-based Simulations
    Rihawi, Omar
    Secq, Yann
    Mathieu, Philippe
    JURNAL TEKNOLOGI, 2013, 63 (03):
  • [23] An agent-based data collection architecture for distributed simulations
    Xu, Yijia
    Sen, Suvrajeet
    Ciarallo, Frank W.
    International Journal of Modelling and Simulation, 2004, 24 (02): : 55 - 64
  • [24] Work Partitioning on Parallel and Distributed Agent-Based Simulation
    Cordasco, Gennaro
    Spagnuolo, Carmine
    Scarano, Vittorio
    2017 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS (IPDPSW), 2017, : 1472 - 1481
  • [25] A Domain-Specific Language for Microservices
    Donham, Jacob
    PROCEEDINGS OF THE 9TH ACM SIGPLAN INTERNATIONAL SYMPOSIUM ON SCALA (SCALA '18), 2018, : 2 - 12
  • [26] Agent-based Computer Simulations of Language Choice Dynamics
    Hadzibeganovic, Tarik
    Stauffer, Dietrich
    Schulze, Christian
    VALUES, EMPATHY, AND FAIRNESS ACROSS SOCIAL BARRIERS, 2009, 1167 : 221 - 229
  • [27] ParDSL: a domain-specific language framework for supporting deployment of parallel algorithms
    Bedir Tekinerdogan
    Ethem Arkin
    Software & Systems Modeling, 2019, 18 : 2907 - 2935
  • [28] Towards a Domain-Specific Language for Patterns-Oriented Parallel Programming
    Griebler, Dalvan
    Fernandes, Luiz Gustavo
    PROGRAMMING LANGUAGES, SBLP 2013, 2013, 8129 : 105 - 119
  • [29] ParDSL: a domain-specific language framework for supporting deployment of parallel algorithms
    Tekinerdogan, Bedir
    Arkin, Ethem
    SOFTWARE AND SYSTEMS MODELING, 2019, 18 (05): : 2907 - 2935
  • [30] A domain-specific language for cryptographic protocols based on streams
    Juerjens, Jan
    JOURNAL OF LOGIC AND ALGEBRAIC PROGRAMMING, 2009, 78 (02): : 54 - 73