Co-Optimizing Cache Partitioning and Multi-Core Task Scheduling: Exploit Cache Sensitivity or Not?

Binqi Sun, Debayan Roy, Tomasz Kloda, Andrea Bastoni, Rodolfo Pellizzoni, Marco Caccamo
{"title":"Co-Optimizing Cache Partitioning and Multi-Core Task Scheduling: Exploit Cache Sensitivity or Not?","authors":"Binqi Sun, Debayan Roy, Tomasz Kloda, Andrea Bastoni, Rodolfo Pellizzoni, Marco Caccamo","doi":"arxiv-2310.02959","DOIUrl":null,"url":null,"abstract":"Cache partitioning techniques have been successfully adopted to mitigate\ninterference among concurrently executing real-time tasks on multi-core\nprocessors. Considering that the execution time of a cache-sensitive task\nstrongly depends on the cache available for it to use, co-optimizing cache\npartitioning and task allocation improves the system's schedulability. In this\npaper, we propose a hybrid multi-layer design space exploration technique to\nsolve this multi-resource management problem. We explore the interplay between\ncache partitioning and schedulability by systematically interleaving three\noptimization layers, viz., (i) in the outer layer, we perform a breadth-first\nsearch combined with proactive pruning for cache partitioning; (ii) in the\nmiddle layer, we exploit a first-fit heuristic for allocating tasks to cores;\nand (iii) in the inner layer, we use the well-known recurrence relation for the\nschedulability analysis of non-preemptive fixed-priority (NP-FP) tasks in a\nuniprocessor setting. Although our focus is on NP-FP scheduling, we evaluate\nthe flexibility of our framework in supporting different scheduling policies\n(NP-EDF, P-EDF) by plugging in appropriate analysis methods in the inner layer.\nExperiments show that, compared to the state-of-the-art techniques, the\nproposed framework can improve the real-time schedulability of NP-FP task sets\nby an average of 15.2% with a maximum improvement of 233.6% (when tasks are\nhighly cache-sensitive) and a minimum of 1.6% (when cache sensitivity is low).\nFor such task sets, we found that clustering similar-period (or mutually\ncompatible) tasks often leads to higher schedulability (on average 7.6%) than\nclustering by cache sensitivity. In our evaluation, the framework also achieves\ngood results for preemptive and dynamic-priority scheduling policies.","PeriodicalId":501333,"journal":{"name":"arXiv - CS - Operating Systems","volume":"17 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2023-10-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2310.02959","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Cache partitioning techniques have been successfully adopted to mitigate interference among concurrently executing real-time tasks on multi-core processors. Considering that the execution time of a cache-sensitive task strongly depends on the cache available for it to use, co-optimizing cache partitioning and task allocation improves the system's schedulability. In this paper, we propose a hybrid multi-layer design space exploration technique to solve this multi-resource management problem. We explore the interplay between cache partitioning and schedulability by systematically interleaving three optimization layers, viz., (i) in the outer layer, we perform a breadth-first search combined with proactive pruning for cache partitioning; (ii) in the middle layer, we exploit a first-fit heuristic for allocating tasks to cores; and (iii) in the inner layer, we use the well-known recurrence relation for the schedulability analysis of non-preemptive fixed-priority (NP-FP) tasks in a uniprocessor setting. Although our focus is on NP-FP scheduling, we evaluate the flexibility of our framework in supporting different scheduling policies (NP-EDF, P-EDF) by plugging in appropriate analysis methods in the inner layer. Experiments show that, compared to the state-of-the-art techniques, the proposed framework can improve the real-time schedulability of NP-FP task sets by an average of 15.2% with a maximum improvement of 233.6% (when tasks are highly cache-sensitive) and a minimum of 1.6% (when cache sensitivity is low). For such task sets, we found that clustering similar-period (or mutually compatible) tasks often leads to higher schedulability (on average 7.6%) than clustering by cache sensitivity. In our evaluation, the framework also achieves good results for preemptive and dynamic-priority scheduling policies.
协同优化缓存分区和多核任务调度:利用缓存敏感性与否?
缓存分区技术已被成功地用于减轻多核处理器上并发执行实时任务之间的干扰。考虑到对缓存敏感的任务的执行时间很大程度上依赖于可供其使用的缓存,因此协同优化缓存分区和任务分配可以提高系统的可调度性。本文提出了一种混合多层设计空间探索技术来解决这一多资源管理问题。我们通过系统地交错三个优化层来探索缓存分区和可调度性之间的相互作用,即:(i)在外层,我们执行宽度优先搜索并结合主动修剪缓存分区;(ii)在中间层,我们利用第一拟合启发法将任务分配给核心;(iii)在内层,我们使用众所周知的递归关系来分析单处理器设置下非抢占式固定优先级(NP-FP)任务的可调度性。虽然我们的重点是NP-FP调度,但我们通过在内层插入适当的分析方法来评估我们的框架在支持不同调度策略(NP-EDF, P-EDF)方面的灵活性。实验表明,与最先进的技术相比,所提出的框架可以提高NP-FP任务集的实时可调度性,平均提高15.2%,最大提高233.6%(当任务对缓存高度敏感时),最小提高1.6%(当缓存灵敏度较低时)。对于这样的任务集,我们发现聚类相似周期(或相互兼容)的任务通常比通过缓存灵敏度聚类获得更高的可调度性(平均7.6%)。在我们的评估中,该框架在抢占和动态优先级调度策略方面也取得了良好的效果。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
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学术官方微信