Sylvan: multi-core framework for decision diagrams

被引:35
|
作者
van Dijk, Tom [1 ]
van de Pol, Jaco [2 ]
机构
[1] Johannes Kepler Univ Linz, Inst Formal Models & Verificat, Linz, Austria
[2] Univ Twente, Formal Methods & Tools, Enschede, Netherlands
关键词
Multi-core; Parallel; Binary decision diagrams; Multi-terminal binary decision diagrams; Multi-valued decision diagrams; Symbolic model checking; SYMBOLIC REACHABILITY; BDD PACKAGE; VERIFICATION; MANIPULATION; MODEL;
D O I
10.1007/s10009-016-0433-2
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Decision diagrams, such as binary decision diagrams, multi-terminal binary decision diagrams and multi-valued decision diagrams, play an important role in various fields. They are especially useful to represent the characteristic function of sets of states and transitions in symbolic model checking. Most implementations of decision diagrams do not parallelize the decision diagram operations. As performance gains in the current era now mostly come from parallel processing, an ongoing challenge is to develop datastructures and algorithms for modern multi-core architectures. The decision diagram package Sylvan provides a contribution by implementing parallelized decision diagram operations and thus allowing sequential algorithms that use decision diagrams to exploit the power of multi-core machines. This paper discusses the design and implementation of Sylvan, especially an improvement to the lock-free unique table that uses bit arrays, the concurrent operation cache and the implementation of parallel garbage collection. We extend Sylvan with multi-terminal binary decision diagrams for integers, real numbers and rational numbers. This extension also allows for custom MTBDD leaves and operations and we provide an example implementation of GMP rational numbers. Furthermore, we show how the provided framework can be integrated in existing tools to provide out-of-the-box parallel BDD algorithms, as well as support for the parallelization of higher-level algorithms. As a case study, we parallelize on-the-fly symbolic reachability in the model checking toolset LTSmin. We experimentally demonstrate that the parallelization of symbolic model checking for explicit-state modeling languages, as supported by LTSmin, scales well. We also show that improvements in the design of the unique table result in faster execution of on-the-fly symbolic reachability.
引用
收藏
页码:675 / 696
页数:22
相关论文
共 50 条
  • [1] Sylvan: multi-core framework for decision diagrams
    Tom van Dijk
    Jaco van de Pol
    International Journal on Software Tools for Technology Transfer, 2017, 19 : 675 - 696
  • [2] Verifying Multi-core Schedulability with Data Decision Diagrams
    Racordon, Dimitri
    Buchs, Didier
    SOFTWARE ENGINEERING FOR RESILIENT SYSTEMS, (SERENE 2016), 2016, 9823 : 45 - 61
  • [3] Task and Conduit Framework for Multi-Core Systems
    Mohindra, Sanjeev
    Daly, James
    Haney, Ryan
    Schrader, Glenn
    PROCEEDINGS OF THE HPCMP USERS GROUP CONFERENCE 2008, 2008, : 506 - 513
  • [4] VERTAF/Multi-Core: A SysML-Based Application Framework for Multi-Core Embedded Software Development
    Lin, Chao-Sheng
    Lu, Chun-Hsien
    Lin, Shang-Wei
    Chen, Yean-Ru
    Hsiung, Pao-Ann
    JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2011, 26 (03) : 448 - 462
  • [5] VERTAF/Multi-Core:A SysML-Based Application Framework for Multi-Core Embedded Software Development
    林朝圣
    吕俊贤
    林尚威
    陈盈如
    熊博安
    Journal of Computer Science & Technology, 2011, 26 (03) : 448 - 462
  • [6] VERTAF/MULTI-CORE: A SYSML-BASED APPLICATION FRAMEWORK FOR MULTI-CORE EMBEDDED SOFTWARE DEVELOPMENT
    Lin, Chao-Sheng
    Hsiung, Pao-Ann
    Lin, Shang-Wei
    Chen, Yean-Ru
    Lu, Chun-Hsien
    Tong, Sheng-Ya
    Su, Wan-Ting
    Shih, Chihhsiong
    Hsueh, Nien-Lin
    Chang, Chih-Hung
    Koong, Chorng-Shiuh
    JOURNAL OF THE CHINESE INSTITUTE OF ENGINEERS, 2009, 32 (07) : 985 - 991
  • [7] VERTAF/Multi-Core: A SysML-Based Application Framework for Multi-Core Embedded Software Development
    Chao-Sheng Lin
    Chun-Hsien Lu
    Shang-Wei Lin
    Yean-Ru Chen
    Pao-Ann Hsiung
    Journal of Computer Science and Technology, 2011, 26 : 448 - 462
  • [8] VERTAF/Multi-Core: A SysML-Based Application Framework for Multi-Core Embedded Software Development
    Hsiung, Pao-Ann
    Lin, Chao-Shen
    Lin, Shang-Wei
    Chen, Yean-Ru
    Lu, Chun-Hsien
    Tong, Sheng-Ya
    Su, Wan-Ting
    Shih, Chihhsiong
    Koong, Chorng-Shiuh
    Hsueh, Nien-Lin
    Chang, Chih-Hung
    Chu, William C.
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, PROCEEDINGS, 2009, 5574 : 303 - +
  • [9] Decision tree building on multi-core using FastFlow
    Aldinucci, Marco
    Ruggieri, Salvatore
    Torquati, Massimo
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2014, 26 (03): : 800 - 820
  • [10] A Framework for the Derivation of WCET Analyses for Multi-Core Processors
    Jacobs, Michael
    Hahn, Sebastian
    Hack, Sebastian
    PROCEEDINGS OF THE 28TH EUROMICRO CONFERENCE ON REAL-TIME SYSTEMS ECRTS 2016, 2016, : 141 - 151