分享自:

多核处理器上具有共享资源的实时任务节能分区

期刊:Journal of Cloud ComputingDOI:10.1186/s13677-025-00790-5

Amina Konswa 与 Amr Mohamed Abdelatif(均来自扎加齐格大学计算机与信息学院,Faculty of Computers and Informatics, Zagazig University)在 Journal of Cloud Computing 上发表了题为“具有共享资源的多核处理器上能量感知的实时任务划分”的研究(2025年,14:66)。该研究聚焦实时嵌入式系统中多核处理器的任务划分、同步与能量优化问题,提出了一种新的“最高任务划分”(Highest Task-Based Partitioning, HTBP)算法,并通过多核实时调度模拟器(Multi-Core Real-Time Scheduling Simulator, MCRTSim)与合成任务集及真实计算机数控(Computerized Numerical Control, CNC)应用任务集进行评估。

从学术背景看,多核处理器已广泛用于实时嵌入式系统,其性能与能效优势促使研究者关注如何在满足硬实时约束的同时降低能耗。动态电压频率调节(Dynamic Voltage and Frequency Scaling, DVFS)是常用节能手段,而任务划分(task partitioning)在多核环境中属于NP难问题。现有许多划分算法仅面向独立任务,忽视了共享资源访问带来的阻塞与同步开销。然而,在实际应用中,任务常因访问共享资源(如数据对象、文件、共享变量)而相互依赖;跨核访问同一全局资源会导致远程阻塞和自旋锁等待,增加执行时间,甚至错过截止时间。因此,需要资源感知的划分策略,这是本研究的主要动因。

该文的工作流程可分为四个主要环节。第一,定义系统模型与问题。作者考虑非理想动态电压频率调节(non-ideal DVFS)多核处理器,每个核可在若干离散速度下运行;采用CMOS功耗模型,动态功耗正比于电压平方与频率乘积,静态功耗与漏电流和电压相关。任务模型为周期、可抢占但仅非临界区可抢占的依赖任务,每个任务具有到达时间、最坏情况计算时间、相对截止期、周期和临界区列表。资源模型包含若干共享资源,以信号量保证互斥访问。研究目标为将任务划分到各核,并确定合适执行速度,在满足截止时间的同时最小化整体能量消耗。

第二,提出并详述HTBP划分算法。该算法首先为每个任务计算利用率与“资源使用度”si,后者由任务请求的资源数量加上所有临界区长度之和除以周期得到。然后选取资源使用度最高的任务作为“最高资源使用任务”τh,对每个其余任务计算其与τh的相似度(即二者共同请求的资源集合),若相似度非零,则进一步计算该任务在共同资源上的临界区总和并构造排序值svali。所有与τh有相似资源的任务按svali降序排序,并依次分配到当前利用率最低的核上;分配前需通过可调度性检验。若任务集中不再存在与τh有共享资源的任务,则从未分配任务中任选一个,再选择利用率最低核分配,直到所有任务分配完毕。可调度性检验基于分区最早截止期优先(Partitioned Earliest Deadline First, P-EDF)调度与多处理器栈资源策略(Multiprocessor Stack Resource Policy, MSRP)同步协议,综合本地阻塞时间、全局阻塞时间与自旋锁时间,要求在任意核上所有任务利用率与阻塞项之和不超过1。同步方面采用MSRP,它将资源分为本地资源(仅同核任务访问)与全局资源(跨核任务访问)。本地阻塞发生时任务被相同核上其他任务阻塞;全局阻塞发生时任务需自旋等待其他核释放资源。作者给出本地资源天花板、全局资源天花板、自旋锁时间与最坏阻塞时间的计算公式,并据此判断任务集可调度性。

第三,提出双速(Dual-Speed, DS)执行速度分配策略。在任务永久分配后,先以较高基础速度运行任务,当实际阻塞时间确定后,再根据公式计算可降低的执行速度,使任务在截止期前完成,从而进一步节省能耗。作者给出一个具体示例:双核处理器上运行七个任务,比较相似性划分(Similarity-Based Partitioning, SBP)与HTBP。SBP将部分任务分到核1、部分分到核2,产生两个全局资源r2和r6,核2上的任务τ3在尝试锁定全局资源r6时被核1上的τ2阻塞,发生自旋等待。而HTBP将τ3分配到核1,使r6变为核1的本地资源,消除了该远程阻塞,减少了自旋锁时间与能耗。示例经MCRTSim模拟200个时间单位后,HTBP总能耗为353.041 W,低于SBP的437.177 W、最差适配递减(Worst-Fit Decreasing, WFD)的447.649 W和最佳适配递减(Best-Fit Decreasing, BFD)的449.174 W。复杂度分析表明HTBP时间复杂度为O(mn²),其中m为资源数量,n为任务数。

第四,进行实验评估。实验分为合成任务集与真实CNC应用任务集。合成任务集在2、4、8、16核处理器上生成,任务最坏执行时间在[8—40]毫秒、周期在[100—250]毫秒范围内随机选取;临界区长度不超过阻塞因子与最坏执行时间之积;每个任务访问资源数从1到总资源数随机选取;每种配置生成至少5个可行任务集并取均值。真实CNC任务集包含8个周期任务,周期在[2.4—9.6]毫秒,共享资源集合为{r1, r2},每个任务随机选择所需资源,每种实验生成10个任务集并取均值,模拟200个时间单位。性能指标为总能量消耗与错过截止时间百分比。

主要结果显示,在合成任务集上,总能量消耗随核数增加而升高,但HTBP在所有核配置(2、4、8、16核)下能量消耗均低于SBP、WFD和BFD,原因是HTBP根据临界区长度将最相似任务分配到同核,减少全局资源数量与远程阻塞。错过截止时间百分比也随核数增加而增加,HTBP始终保持最低,因其在执行划分时考虑阻塞时间并通过可调度性检验。在双核上固定总利用率约为1.7、共享资源数为5时,任务数从10增加到50,各算法每次作业平均能耗略有上升,HTBP受影响更小且更节能。在固定利用率约1.5、任务数为20、共享资源数从3增加到10时,能耗也略有增加,HTBP同样更稳定。总利用率从1.0左右增加到1.8时,所有算法能耗增加,但HTBP始终最低,且差距随利用率提高而扩大。在真实CNC任务集上,能耗随系统利用率增大而增加,HTBP平均比SBP降低18%、比WFD降低31%、比BFD降低62%。文中附表还总结了2、4、8、16核时HTBP相对SBP、WFD、BFD的能量降低百分比,其中相对BFD最高达39.1%(4核),相对SBP最高达11.8%(2核),相对WFD最高达17.1%(8核)。

结论上,HTBP算法在任务至核分配阶段即考虑相似资源共享与临界区长度,能在保持可调度性的前提下显著减少全局资源数量与远程自旋锁时间,进而降低能量消耗与错过截止时间数量。该方法的科学价值在于将资源感知的任务划分与能量感知的速度分配结合,扩展了多核实时系统任务划分中有关同步与能耗的研究;应用价值在于其可适用于汽车电子控制单元(ECU)与CNC机床控制系统等工业实时环境,支持2、4、8、16核配置,便于集成到基于ARM的片上系统或多核DSP中。需要指出,HTBP基于静态划分与P-EDF方式,不允许任务迁移;未来需扩展到半划分与全局调度情境,以及支持动态资源变化与自适应资源跟踪的场景。

本文的亮点包括:提出一种新颖的基于“最高资源使用任务”相似度的划分策略,不仅考虑资源集合交集,还引入临界区长度加权的排序值;将划分算法与MSRP可调度性分析深度结合,在每个分配步骤中依据阻塞项进行可调度性验证;通过合成任务集与真实CNC任务集双重评估验证了算法在不同核数、任务数、资源数与利用率变化下的节能优势;与SBP、WFD、BFD的系统比较显示了HTBP在降低能耗与减少截止期错过方面的明显改善。此外,文中比较表还梳理了已有任务同步调度文献,有助于后续研究者理解该领域的方法演进与关键差异。

上述解读依据用户上传的学术文献,如有不准确或可能侵权之处请联系本站站长:admin@fmread.com