Skip to main content
QUICK REVIEW

[论文解读] MARS: Middleware for Adaptive Reflective Computer Systems

Tiago Mück, Bryan Donyanavard|arXiv (Cornell University)|Jul 23, 2021
Parallel Computing and Optimization Techniques被引用 2
一句话总结

MARS 是一种跨层、多平台的中间件框架,可为异构多核处理器(HMP)提供可移植、协调且可反射的运行时资源管理。它允许开发人员使用通用接口组合系统模型和自适应策略,实现在多种基于 Linux 的 HMP 平台上一致行为的动态电压频率调节(DVFS),且移植工作量最小。

ABSTRACT

Self-adaptive approaches for runtime resource management of manycore computing platforms often require a runtime model of the system that represents the software organization or the architecture of the target platform. The increasing heterogeneity in a platform's resource types and the interactions between resources pose challenges for coordinated model-based decision making in the face of dynamic workloads. Self-awareness properties address these challenges for emerging heterogeneous manycore processing (HMP) platforms through reflective resource managers. However, with HMP computing platform architectures evolving rapidly, porting the self-aware decision logic across different hardware platforms is challenging, requiring resource managers to update their models and platform-specific interfaces. We propose MARS (Middleware for Adaptive and Reflective Systems), a cross-layer and multi-platform framework that allows users to easily create resource managers by composing system models and resource management policies in a flexible and coordinated manner. MARS consists of a generic user-level sensing/actuation interface that allows for portable policy design, and a reflective system model used to coordinate multiple policies. We demonstrate MARS' interaction across multiple layers of the system stack through a dynamic voltage and frequency scaling (DVFS) policy example which can run on any Linux-based HMP computing platform.

研究动机与目标

  • 解决在不断演进的异构多核处理器(HMP)平台之间移植自适应资源管理策略的挑战。
  • 在动态工作负载下,实现跨多个系统层级和资源类型(如 CPU、内存、GPU)的协调决策。
  • 降低实现和部署自适应运行时策略的复杂性及平台相关工作量。
  • 提供一个模块化、可扩展的框架,支持在真实硬件和仿真环境之间进行策略开发与验证。

提出的方法

  • MARS 提供一种通用的用户级感知/执行接口,抽象平台特定细节,支持可移植的策略设计。
  • 它采用反射式系统模型,通过维护系统架构和软件组织的运行时表示,协调多个策略。
  • 该框架与系统栈的所有层级集成,涵盖硬件传感器(如功耗、温度、性能计数器)到操作系统接口和内核模块。
  • 支持多种执行平台,包括真实 HMP 系统(Odroid-XU3、NVIDIA Jetson-TX2)、全系统 gem5 仿真,以及用于早期策略验证的基于 trace 的离线仿真器。
  • 策略使用 C++ 实现,采用面向对象设计,框架以 Docker 容器形式分发,便于部署和可复现性。
  • 通过共享模型实现策略间的协调,使其能够推理系统范围内的功耗、性能和资源利用率权衡。

实验结果

研究问题

  • RQ1如何使自适应资源管理策略在多种异构多核处理器平台之间实现可移植性?
  • RQ2为协调跨不同系统层级和资源类型(如 CPU、内存、GPU)的多个策略,需要哪些架构抽象?
  • RQ3反射式中间件框架在多大程度上可减少将策略适配到新硬件平台或新资源类型的工作量?
  • RQ4统一框架在支持真实系统部署和基于仿真的策略开发方面的能力如何?
  • RQ5在共享运行时模型中,多个策略交互时,需要何种机制以确保行为的一致性和协调性?

主要发现

  • MARS 有效实现了动态电压频率调节(DVFS)策略在多个基于 Linux 的 HMP 平台(包括 Odroid-XU3 和 NVIDIA Jetson-TX2)上的部署,并保持一致行为。
  • 该框架支持在真实硬件和全系统 gem5 仿真上执行策略,通过 McPAT 集成功耗建模,实现对性能和能效的精确评估。
  • 基于 trace 的离线仿真器支持策略的早期验证与调试,显著降低了在真实系统上部署前的开发风险。
  • MARS 已成功应用于 SPARTA 和 SPECTR 等研究项目,并在生产环境中用于运行时内存管理及基于模糊控制的资源管理。
  • 该框架的模块化设计和基于 Docker 的部署方式,使其易于集成到现有开发流程中,并支持对新平台、传感器或执行器的可扩展性。
  • 反射式系统模型支持策略间的协调决策,提升了系统对动态工作负载的整体适应能力,且无需针对平台进行重写。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。