实时任务调度与二维FFT并行实现的研究
实时任务调度
在实时任务调度的研究中,任务到达时间采用泊松分布建模,平均任务到达间隔为6秒,这营造了一个任务丰富的环境,使得并非所有任务都能在截止日期前完成。实验对每种启发式算法进行了10次试验并取平均值,整个系统运行7200秒,两小时内平均有995.35个任务被引入系统,超过模拟时间截止日期的任务不被考虑。
从结果来看,不同算法的表现差异明显:
|算法|任务完成率|特点|
| ---- | ---- | ---- |
|Avalanche算法|70.74%|任务完成率最高,能有效处理任务拥塞问题,将长任务分配到快核心以利用高计算能力,减少任务总执行时间,限制长任务在慢核心执行,使短任务能在较少拥塞的情况下执行。但允许约1.7%的任务失败,主要是因为迁移成本未纳入任务能否完成的估计中。|
|Linux调度器|25.05%|任务完成率低,甚至不如随机算法。任务不固定分配到特定核心,会在核心间浮动,导致显著的迁移开销,且采用先来先服务(FCFS)方法调度任务,不考虑系统或任务状态。|
|OLB|最差|在某些设置下,Linux调度器在4个快核心和4个慢核心的配置中表现比OLB更差。|
|RC MCT|优于多数方法|除了两阶段贪心、OMET和Avalanche算法外,表现较好,且是功耗最低的方法之一。与MCT相比,完成任务数约多10%,功耗约低10%,它为长任务预留一个快核心,减轻其他核心执行长任务的负担,但预留核心常出现任务拥塞。|
|两阶段贪心方法|表现良好|始终考虑整个核心系统,系统有变化时尝试重新分配所有等待队列中的任务,但分配任务到核心时只考虑时间不考虑功耗,导致功耗较高。|
超级会员免费看
订阅专栏 解锁全文
14

被折叠的 条评论
为什么被折叠?



