Using Trace Data for Run-Time Optimization of Parallel Execution in Real-Time Multi-Core Systems

IF 0.5 Q4 COMPUTER SCIENCE, SOFTWARE ENGINEERING
Florian Schade, T. Sandmann, J. Becker, Henrik Theiling
{"title":"Using Trace Data for Run-Time Optimization of Parallel Execution in Real-Time Multi-Core Systems","authors":"Florian Schade, T. Sandmann, J. Becker, Henrik Theiling","doi":"10.1109/RTCSA55878.2022.00031","DOIUrl":null,"url":null,"abstract":"In recent years, multi-core processors are becoming more and more common in embedded systems, offering higher performance than single-core processors and thereby enabling both computationally intensive embedded applications as well as the space-, weight-, and energy-efficient integration of software components. However, real-time applications, for which meeting certain deadlines must be guaranteed, do not profit as much from this transition. This is mainly due to interference between the processing cores of commercial-off-the-shelf multi-core processors at shared resources, hampering the predictability of task execution times. An effective approach to avoid this is running the critical tasks exclusively on one core while pausing execution on all other cores. This, however, reduces the overall system efficiency since parallel execution potential remains unused. In this work we present a novel approach to managing shared and exclusive execution in such systems. By on-line observation of the critical task progress via the on-chip trace infrastructure, we reduce the time of exclusive execution when it is safely possible and thereby increase the overall system efficiency. Using trace information allows for early detection of parallelization potential and does not require modifications to the critical application, which helps avoiding re-certification of the critical application. We present an implementation on a heterogeneous multi-processor system-on-chip using a state-of-the-art hypervisor for critical systems and evaluate its performance. Our results indicate that a performance gain of 37 % to 41 % over approaches focused on exclusive execution can be reached in low-interference situations.","PeriodicalId":38446,"journal":{"name":"International Journal of Embedded and Real-Time Communication Systems (IJERTCS)","volume":"53 9 1","pages":"228-234"},"PeriodicalIF":0.5000,"publicationDate":"2022-08-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Journal of Embedded and Real-Time Communication Systems (IJERTCS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/RTCSA55878.2022.00031","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0

Abstract

In recent years, multi-core processors are becoming more and more common in embedded systems, offering higher performance than single-core processors and thereby enabling both computationally intensive embedded applications as well as the space-, weight-, and energy-efficient integration of software components. However, real-time applications, for which meeting certain deadlines must be guaranteed, do not profit as much from this transition. This is mainly due to interference between the processing cores of commercial-off-the-shelf multi-core processors at shared resources, hampering the predictability of task execution times. An effective approach to avoid this is running the critical tasks exclusively on one core while pausing execution on all other cores. This, however, reduces the overall system efficiency since parallel execution potential remains unused. In this work we present a novel approach to managing shared and exclusive execution in such systems. By on-line observation of the critical task progress via the on-chip trace infrastructure, we reduce the time of exclusive execution when it is safely possible and thereby increase the overall system efficiency. Using trace information allows for early detection of parallelization potential and does not require modifications to the critical application, which helps avoiding re-certification of the critical application. We present an implementation on a heterogeneous multi-processor system-on-chip using a state-of-the-art hypervisor for critical systems and evaluate its performance. Our results indicate that a performance gain of 37 % to 41 % over approaches focused on exclusive execution can be reached in low-interference situations.
跟踪数据用于实时多核系统并行执行的运行时优化
近年来,多核处理器在嵌入式系统中变得越来越普遍,提供比单核处理器更高的性能,从而支持计算密集型嵌入式应用程序以及软件组件的空间、重量和节能集成。然而,必须保证满足特定截止日期的实时应用程序并没有从这种转换中获得多少利润。这主要是由于商用多核处理器的处理内核之间在共享资源上的干扰,从而妨碍了任务执行时间的可预测性。避免这种情况的有效方法是只在一个核心上运行关键任务,同时暂停所有其他核心的执行。然而,这降低了系统的整体效率,因为并行执行的潜力仍然未被利用。在这项工作中,我们提出了一种在这种系统中管理共享和独占执行的新方法。通过片上跟踪基础设施在线观察关键任务的进度,我们在安全的情况下减少了独占执行的时间,从而提高了整个系统的效率。使用跟踪信息可以早期检测并行化潜力,并且不需要修改关键应用程序,这有助于避免对关键应用程序进行重新认证。我们提出了一个异构多处理器片上系统的实现,使用最先进的关键系统管理程序并评估其性能。我们的结果表明,在低干扰情况下,与专注于排他性执行的方法相比,可以达到37%至41%的性能增益。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
CiteScore
1.70
自引率
14.30%
发文量
17
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信