Design of the CodeBoost transformation system for domain-specific optimisation of C++ programs

被引:26
|
作者
Bagge, OS
Kalleberg, KT
Haveraaen, M
Visser, E
机构
关键词
D O I
10.1109/SCAM.2003.1238032
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The use of a high-level, abstract coding style can greatly increase developer productivity. For numerical software, this can result in drastically reduced run-time performance. High-level, domain-specific optimisations can eliminate much of the overhead caused by an abstract coding style, but current compilers have poor support for domain specific optimisation. In this paper we present CodeBoost, a source-to-source transformation tool for domain-specific optimisation of C++ programs. CodeBoost performs parsing, semantic analysis and pretty-printing, and transformations can be implemented either in the Stratego program transformation language, or as user-defined rewrite rules embedded within the C++ program. CodeBoost has been used with great success to optimise numerical applications written in the Sophus high-level coding style. We discuss the overall design of the CodeBoost transformation framework, and take a closer look at two important features of CodeBoost: user-defined rules and totem annotations. We also show briefly how CodeBoost is used to optimise Sophus code, resulting in applications that run twice as fast, or more.
引用
收藏
页码:65 / 74
页数:10
相关论文
共 50 条
  • [31] EMG: A Domain-Specific Transformation Language for Synthetic Model Generation
    Popoola, Saheed
    Kolovos, Dimitrios S.
    Rodriguez, Horacio Hoyos
    THEORY AND PRACTICE OF MODEL TRANSFORMATIONS, ICMT 2016, 2016, 9765 : 36 - 51
  • [32] A Lightweight Approach for Domain-Specific Modeling Languages Design
    Robert, Sylvain
    Gerard, Sebastien
    Terrier, Francois
    Lagarde, Francois
    2009 35TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS, PROCEEDINGS, 2009, : 155 - +
  • [33] Domain-specific language design requires feature descriptions
    van Deursen, Arie
    Klint, Paul
    Journal of Computing and Information Technology, 2002, 10 (01) : 1 - 17
  • [34] Toward Rigorous Design of Domain-Specific Distributed Systems
    Al-Mahfoudh, Mohammed
    Gopalakrishnan, Ganesh
    Stutsman, Ryan
    2016 IEEE/ACM 4TH FME WORKSHOP ON FORMAL METHODS IN SOFTWARE ENGINEERING (FORMALISE), 2016, : 42 - 48
  • [35] An Approach for Domain-Specific Design Pattern Identification Based on Domain Ontology
    Gkantouna, Vassiliki
    Papaioannou, Vaios
    Tzimas, Giannis
    Sabic, Zlatan
    ARTIFICIAL INTELLIGENCE APPLICATIONS AND INNOVATIONS (AIAI 2019), 2019, 560 : 125 - 137
  • [36] Software-driven Design for Domain-specific Compute
    Kirkpatrick, Desmond A.
    PROCEEDINGS OF THE 2023 INTERNATIONAL SYMPOSIUM ON PHYSICAL DESIGN, ISPD 2023, 2023, : 206 - 206
  • [37] TEMPPLET: A new method for domain-specific ontology design
    Dong, Y
    Li, MS
    ENGINEERING AND DEPLOYMENT OF COOPERATIVE INFORMATION SYSTEMS, PROCEEDINGS, 2002, 2480 : 90 - 103
  • [38] A Reconfigurable Platform for the Design and Verification of Domain-Specific Accelerators
    Park, Sungho
    Cho, Yong Cheol Peter
    Irick, Kevin M.
    Narayanan, Vijaykrishnan
    2012 17TH ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE (ASP-DAC), 2012, : 108 - 113
  • [39] On Design of Domain-Specific Query Language for the Metallurgical Industry
    Borodin, Andrey
    Kiselev, Yuri
    Mirvoda, Sergey
    Porshnev, Sergey
    BEYOND DATABASES, ARCHITECTURES AND STRUCTURES, BDAS 2015, 2015, 521 : 505 - 515
  • [40] Structured Design and Development of Domain-Specific Languages in Robotics
    Schneider, Sven
    Hochgeschwender, Nico
    Kraetzschmar, Gerhard K.
    SIMULATION, MODELING, AND PROGRAMMING FOR AUTONOMOUS ROBOTS (SIMPAR 2014), 2014, 8810 : 231 - 242