[论文解读] STOMP: A Tool for Evaluation of Scheduling Policies in Heterogeneous Multi-Processors
STOMP 是一个开源的即插即用离散事件仿真器,用于评估异构多处理器系统中的调度策略,支持在特定领域应用的片上系统(SoC)上快速原型设计和验证任务调度算法。在与闭式模型对比验证时,其稳态响应时间分析的平均相对误差仅为 0.50% 至 1.45%,表现出高精度。
The proliferation of heterogeneous chip multiprocessors in recent years has reached unprecedented levels. Traditional homogeneous platforms have shown fundamental limitations when it comes to enabling high-performance yet-ultra-low-power computing, in particular in application domains with real-time execution deadlines or criticality constraints. By combining the right set of general purpose cores and hardware accelerators together, along with proper chip interconnects and memory technology, heterogeneous chip multiprocessors have become an effective high-performance and low-power computing alternative. One of the challenges of heterogeneous architectures relates to efficient scheduling of application tasks (processes, threads) across the variety of options in the chip. As a result, it is key to provide tools to enable early-stage prototyping and evaluation of new scheduling policies for heterogeneous platforms. In this paper, we present STOMP (Scheduling Techniques Optimization in heterogeneous Multi-Processors), a simulator for fast implementation and evaluation of task scheduling policies in multi-core/multi-processor systems with a convenient interface for "plugging" in new scheduling policies in a simple manner. Thorough validation of STOMP exhibits small relative errors when compared against closed-formed equivalent models during steady-state analysis.
研究动机与目标
- 解决在异构多处理器系统中,早期阶段调度策略评估缺乏灵活、开源工具的问题。
- 支持在具有多样化处理单元的领域专用 SoC 中,对新型调度算法进行快速原型设计与对比。
- 提供一个兼顾初学者易用性与专家用户可配置性的仿真环境。
- 在不同系统利用率和工作负载特性下,通过与解析模型对比,验证仿真器的准确性。
- 使研究人员能够轻松插入并评估自定义调度策略,而无需修改仿真器核心代码。
提出的方法
- STOMP 基于 QUTE 框架构建基于队列的离散事件仿真模型,支持概率性和基于轨迹的执行模式。
- 它可配置地建模异构系统,包括通用处理器核心、GPU、加速器和 DSP。
- 应用程序以有向无环图(DAG)表示,可为合成生成,也可基于真实性能分析数据生成。
- 仿真器提供即插即用接口,允许用户在不修改内部代码的前提下实现并测试新型调度策略。
- 支持两种仿真模式:概率性模式(使用可配置的概率分布描述任务到达和处理时间)与真实模式(使用来自真实工作负载的轨迹文件)。
- 仿真结束后,STOMP 生成详细统计信息,包括响应时间、等待时间、队列大小直方图,以及每类任务和处理单元类型的处理器利用率。
实验结果
研究问题
- RQ1与解析模型相比,STOMP 在异构多处理器系统中模拟稳态响应时间的准确性如何?
- RQ2不同任务到达率和服务时间分布下,任务调度策略的性能表现如何变化?
- RQ3在计算时间方差较大的情况下,依赖剩余时间估计的调度策略表现如何?
- RQ4STOMP 的仿真保真度在多大程度上支持在领域专用 SoC 中对调度算法进行早期探索?
- RQ5STOMP 是否能够在无需修改底层仿真器代码的前提下,实现新型调度策略的高效、灵活且准确的评估?
主要发现
- STOMP 在稳态响应时间分析中表现出极小的相对误差:与闭式模型对比,单服务器为 0.50%,双服务器为 0.83%,三服务器为 1.45%。
- 随着平均任务到达时间减少,任务队列大小显著增加:在 50 单位时间时队列为空的时间占比为 54%,而在 100 单位时间时上升至 94%。
- 依赖精确剩余时间估计的策略(如 v3 和 v4)在计算时间离散度增加时响应时间更高,原因在于估计不准确。
- 在高离散度下,v5 策略通过采用更稳健的剩余时间估计方法,优于 v3 和 v4,有效降低了性能退化。
- 仿真器的基于轨迹的模式可利用真实工作负载轮廓实现高保真度仿真,支持对调度策略的真实评估。
- STOMP 开放且模块化的设计使研究人员能够轻松插入新型调度策略,显著促进快速实验与对比。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。