WCET optimization strategy based on source code refactoring

被引:0
|
作者
Fanqi Meng
Xiaohong Su
机构
[1] Harbin Institute of Technology,School of Computer Science and Technology
[2] Northeast Electric Power University,School of Information Engineering
来源
Cluster Computing | 2019年 / 22卷
关键词
Cyber-physical system; Software safety; Code refactoring; Performance optimization; Optimization strategy;
D O I
暂无
中图分类号
学科分类号
摘要
For safety-critical real-time software, if worst-case execution time (WCET) violates a time constraint, it is considered having a timeliness defect. To fix the defect early with lower cost, a WCET optimization strategy is proposed based on source code refactoring. The strategy guides programmers to search refactoring opportunities in the correct positions and perform refactorings by a reasonable sequence. To this end, the worst-case execution path (WCEP) of a target program is firstly extracted from its control flow graph. Then the WCEP is mapped onto source code by the back-annotation technique. An abstract syntax tree-based invariant path identification algorithm is developed for recognizing the invariant paths from the source-level WCEP. According to the invariant paths and loop statements, the source code is divided into four optimization regions with different priorities. Thus the searching scopes are reduced, and invalid refactorings are avoided. On the basis, the refactoring which has the lowest cost in the same region is performed first. To support the strategy, a cost model of source code refactoring is designed. It mainly considers adverse effects of refactorings on the maintainability of source code. The experimental results showed that the optimization strategy reduced WCET effectively and maximally kept the maintainability. Therefore it is more suitable for WCET optimization in an early programming phase. It is helpful to fix the defects early and then guarantee the timeliness safety of the software.
引用
收藏
页码:5563 / 5572
页数:9
相关论文
共 50 条
  • [1] WCET optimization strategy based on source code refactoring
    Meng, Fanqi
    Su, Xiaohong
    CLUSTER COMPUTING-THE JOURNAL OF NETWORKS SOFTWARE TOOLS AND APPLICATIONS, 2019, 22 (Suppl 3): : S5563 - S5572
  • [2] Source Code Rejuvenation Is Not Refactoring
    Pirkelbauer, Peter
    Dechev, Damian
    Stroustrup, Bjarne
    SOFSEM 2010: THEORY AND PRACTICE OF COMPUTER SCIENCE, PROCEEDINGS, 2010, 5901 : 639 - 650
  • [3] Pattern-based refactoring process of sequential source code
    Molitorisz, Korbinian
    PROCEEDINGS OF THE 17TH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING (CSMR 2013), 2013, : 357 - 360
  • [4] Refactoring Edit History of Source Code
    Hayashi, Shinpei
    Omori, Takayuki
    Zenmyo, Teruyoshi
    Maruyama, Katsuhisa
    Saeki, Motoshi
    2012 28TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE (ICSM), 2012, : 617 - 620
  • [5] Automating Source Code Refactoring in the Classroom
    AlOmar, Eman Abdullah
    Mkaouer, Mohamed Wiem
    Ouni, Ali
    PROCEEDINGS OF THE 55TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION, SIGCSE 2024, VOL. 1, 2024, : 60 - 66
  • [6] Identification of refactoring opportunities for source code based on class association relationships
    Liu, Wei
    Yang, Na
    Huang, Xin-di
    Hu, Wei
    Hu, Zhi-gang
    JOURNAL OF CENTRAL SOUTH UNIVERSITY, 2020, 27 (12) : 3768 - 3778
  • [7] Search-Based Refactoring Detection from Source Code Revisions
    Hayashi, Shinpei
    Tsuda, Yasuyuki
    Saeki, Motoshi
    IEICE TRANSACTIONS ON INFORMATION AND SYSTEMS, 2010, E93D (04): : 754 - 762
  • [8] Model-based source code refactoring with interaction and visual cues
    Hemati Moghadam, Iman
    Cinneide, Mel O.
    Sardarian, Ali
    Zarepour, Faezeh
    JOURNAL OF SOFTWARE-EVOLUTION AND PROCESS, 2024, 36 (05)
  • [9] RefactorErl - Source Code Analysis and Refactoring in Erlang
    Bozo, Istvan
    Horpacsi, Daniel
    Horvath, Zoltan
    Kitlei, Robert
    Koszegi, Judit
    Tejfel, Mate
    Toth, Melinda
    12TH SYMPOSIUM ON PROGRAMMING LANGUAGES AND SOFTWARE TOOLS, SPLST' 11, 2011, : 138 - 148
  • [10] Understanding Source Code Differences by Separating Refactoring Effects
    Thangthumachit, Sirinut
    Hayashi, Shinpei
    Saeki, Motoshi
    2011 18TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2011), 2011, : 339 - 347