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は、プラットフォーム固有の詳細を抽象化した汎用のユーザーレベルのセンシング/アクチュエータインタフェースを提供し、ポータブルなポリシー設計を可能にします。
  • フレームワークは、システムのアーキテクチャおよびソフトウェア構成の実行時表現を維持することで、複数のポリシーを調整する自己反映型システムモデルを採用しています。
  • フレームワークは、ハードウェアセンサ(例:電力、温度、パフォーマンスカウンタ)からOSレベルのインタフェースおよびカーネルモジュールに至るまで、システムスタックのあらゆるレイヤーと統合されています。
  • 実HMPシステム(Odroid-XU3、NVIDIA Jetson-TX2)、フルシステムgem5シミュレーション、および早期のポリシー検証を目的としたトレースベースのオフラインシミュレータを含む、複数の実行プラットフォームをサポートしています。
  • ポリシーはC++で実装されており、オブジェクト指向設計が採用されています。フレームワーク自体はDockerコンテナとして配布され、容易なデプロイと再現性を実現しています。
  • 共有モデルを通じたポリシー間の連携により、電力、パフォーマンス、リソース利用率の全体最適化を考慮した意思決定が可能になっています。

実験結果

リサーチクエスチョン

  • RQ1自己適応的リソース管理ポリシーを、多様な異種並列プロセッサプラットフォーム間でどのようにしてポータブルに実現できるか?
  • RQ2異なるシステムレイヤーおよびリソースタイプ間で複数のポリシーを調整するために必要なアーキテクチャ抽象化は何か?
  • RQ3自己反映型ミドルウェアフレームワークは、新しいハードウェアプラットフォームや新しいリソースタイプにポリシーを適応させる作業をどの程度軽減できるか?
  • RQ4統合されたフレームワークが、実システムデプロイとシミュレーションベースのポリシー開発をどの程度同時にサポートできるか?
  • RQ5複数のポリシーが共有の実行時モデル内で相互作用する際、一貫性があり調整された動作を保証するために必要なメカニズムは何か?

主な発見

  • MARSは、Odroid-XU3やNVIDIA Jetson-TX2を含む複数のLinuxベースのHMPプラットフォーム間で、動的電圧周波数スケーリング(DVFS)ポリシーを一貫して展開・動作させることに成功しました。
  • フレームワークは、実ハードウェアおよびフルシステムgem5シミュレーションの両方でポリシー実行をサポートしており、McPATを介した統合型電力モデリングにより、正確なパフォーマンスおよびエネルギー評価が可能になっています。
  • トレースベースのオフラインシミュレータの使用により、実システムへのデプロイ前にポリシーの早期検証およびデバッグが可能になり、開発リスクが低減されています。
  • MARSは、SPARTAやSPECTRといった研究プロジェクトで成功裏に使用されており、ランタイムメモリ管理およびファジィ制御ベースのリソース管理の生産環境デプロイでも活用されています。
  • フレームワークのモジュラー設計とDockerベースのデプロイにより、既存の開発パイプラインへの容易な統合が可能であり、新規プラットフォーム、センサ、アクチュエータの拡張性もサポートしています。
  • 自己反映型システムモデルにより、プラットフォーム固有の再実装を必要とせずに、動的ワークロードへの全体最適な適応が可能になっています。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。