Optimal Program Partitioning for Predictable Performance

J. Whitham, N. Audsley
{"title":"Optimal Program Partitioning for Predictable Performance","authors":"J. Whitham, N. Audsley","doi":"10.1109/ECRTS.2012.18","DOIUrl":null,"url":null,"abstract":"Scratchpad memory (SPM) provides a predictable and energy efficient way to store program instructions and data. It would be ideal for embedded real-time systems if not for the practical difficulty that most programs have to be modified in source or binary form in order to use it effectively. This modification process is called partitioning, and it splits a large program into sub-units called regions that are small enough to be stored in SPM. Earlier papers on this subject have only considered regions formed around program structures, such as loops, methods and even entire tasks. Region formation and SPM allocation are performed in two separate steps. This is an approximation that does not make best use of SPM. In this paper, we propose a k-partitioning algorithm as a new way to solve the problem. This allows us to carry out region formation and SPM allocation simultaneously. We can generate optimal partitions for programs expressed either as call trees or by a restricted form of control-flow graph (CFG). We show that this approach obtains superior results to the previous two-step approach. We apply our algorithm to various programs and SPM sizes and show that it reduces the execution time cost for executing those programs relative to execution with cache.","PeriodicalId":425794,"journal":{"name":"2012 24th Euromicro Conference on Real-Time Systems","volume":"5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2012-07-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2012 24th Euromicro Conference on Real-Time Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ECRTS.2012.18","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

Abstract

Scratchpad memory (SPM) provides a predictable and energy efficient way to store program instructions and data. It would be ideal for embedded real-time systems if not for the practical difficulty that most programs have to be modified in source or binary form in order to use it effectively. This modification process is called partitioning, and it splits a large program into sub-units called regions that are small enough to be stored in SPM. Earlier papers on this subject have only considered regions formed around program structures, such as loops, methods and even entire tasks. Region formation and SPM allocation are performed in two separate steps. This is an approximation that does not make best use of SPM. In this paper, we propose a k-partitioning algorithm as a new way to solve the problem. This allows us to carry out region formation and SPM allocation simultaneously. We can generate optimal partitions for programs expressed either as call trees or by a restricted form of control-flow graph (CFG). We show that this approach obtains superior results to the previous two-step approach. We apply our algorithm to various programs and SPM sizes and show that it reduces the execution time cost for executing those programs relative to execution with cache.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
可预测性能的最佳程序分区
Scratchpad内存(SPM)提供了一种可预测和节能的方式来存储程序指令和数据。如果不是因为大多数程序必须修改源代码或二进制格式以有效地使用它,它将是嵌入式实时系统的理想选择。这种修改过程称为分区,它将一个大程序分成称为区域的子单元,这些子单元小到足以存储在SPM中。关于这个主题的早期论文只考虑了围绕程序结构形成的区域,例如循环、方法甚至整个任务。区域形成和SPM分配分两个步骤进行。这是一个没有充分利用SPM的近似值。在本文中,我们提出了一种k划分算法作为解决这一问题的新方法。这使得我们可以同时进行区域形成和SPM分配。我们可以为调用树或控制流图(CFG)的限制形式的程序生成最优分区。我们证明了这种方法比之前的两步方法获得了更好的结果。我们将我们的算法应用于各种程序和SPM大小,并表明与使用缓存执行相比,它减少了执行这些程序的执行时间成本。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Deriving Monitoring Bounds for Distributed Real-Time Systems Schedulability Analysis of Periodic Tasks Implementing Synchronous Finite State Machines A Sensitivity Analysis of Two Worst-Case Delay Computation Methods for SpaceWire Networks Measurement-Based Probabilistic Timing Analysis for Multi-path Programs Supporting Nested Locking in Multiprocessor Real-Time Systems
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1