Skip to main content
QUICK REVIEW

[論文レビュー] Reinforcement Learning Approach for Mapping Applications to Dataflow-Based Coarse-Grained Reconfigurable Array

Andre Xian Ming Chang, Parth Khopkar|arXiv (Cornell University)|May 26, 2022
Parallel Computing and Optimization Techniques被引用数 4
ひとこと要約

本論文は、グローバルグラフアテンション(GGA)と出力マスクを組み合わせた強化学習(RL)フレームワークを提案し、粗粒度再構成可能アレイ(CGRA)ストリーミングエンジンへのデータフロー応用の自動マッピングを実現する。この手法は、プロキシマルポリシーオプティマイゼーション(PPO)を用いて最適な命令スケジューリングを学習し、マスクを適用することで10%のクロックサイクル性能向上と20%の報酬向上を達成し、スパースな探索空間においてベースライン手法を顕著に上回る性能を発揮する。

ABSTRACT

The Streaming Engine (SE) is a Coarse-Grained Reconfigurable Array which provides programming flexibility and high-performance with energy efficiency. An application program to be executed on the SE is represented as a combination of Synchronous Data Flow (SDF) graphs, where every instruction is represented as a node. Each node needs to be mapped to the right slot and array in the SE to ensure the correct execution of the program. This creates an optimization problem with a vast and sparse search space for which finding a mapping manually is impractical because it requires expertise and knowledge of the SE micro-architecture. In this work we propose a Reinforcement Learning framework with Global Graph Attention (GGA) module and output masking of invalid placements to find and optimize instruction schedules. We use Proximal Policy Optimization in order to train a model which places operations into the SE tiles based on a reward function that models the SE device and its constraints. The GGA module consists of a graph neural network and an attention module. The graph neural network creates embeddings of the SDFs and the attention block is used to model sequential operation placement. We show results on how certain workloads are mapped to the SE and the factors affecting mapping quality. We find that the addition of GGA, on average, finds 10% better instruction schedules in terms of total clock cycles taken and masking improves reward obtained by 20%.

研究の動機と目的

  • 同期的データフロー(SDF)グラフをアーキテクチャ制約を伴うストリーミングエンジン(SE)タイルにマップするという、NP困難でスパースかつ複雑な問題に取り組む。
  • SE応用マッピングにおけるエキスパート知識と手作業の必要性を低減し、自動的かつ非教師あり学習に基づく最適化を可能にする。
  • アテンション機構とアクションマスクの統合により、スパースな探索空間におけるマッピング品質とサンプル効率を向上させる。
  • 多様なワークロードに一般化できるように、さまざまな中間表現(IR)グラフ上で事前学習および微調整を実施する。
  • SEツールチェーンにRLマッパーを統合し、スケジューリングにおけるトレードオフの自動探索を促進し、開発を加速する。

提案手法

  • SDFノードのタイルおよびスロット配置を選択するポリシーネットワークを学習するため、強化学習アルゴリズムとしてプロキシマルポリシーオプティマイゼーション(PPO)を採用する。
  • SDF埋め込みにグラフニューラルネットワーク(GNN)を用い、ノード間の依存関係をモデル化するマルチヘッドアテンション機構と組み合わせたグローバルグラフアテンション(GGA)モジュールを導入する。
  • 各ステップで無効なアクション(例:制約超過やデータ依存性のある配置)をマスクすることで、探索空間を縮小し、学習の安定性を向上させる。
  • 報酬計算に、タイルメモリ、データフロー依存関係、およびタイル間レイテンシをモデル化したシミュレーテッドSE環境をRL環境として使用する。
  • ノードの処理順序をトポロジカル(上位順序)に整えることで、依存ノードをその親ノードの後処理に制限し、学習を改善する。
  • ランダムなIRグラフ上で事前学習を実施し、その後FFTなどの特定ワークロードで微調整することで、知識の転送を実現し、収束を向上させる。

実験結果

リサーチクエスチョン

  • RQ1深層強化学習フレームワークは、教師なしでCGRA上の命令マッピングの巨大でスパースな探索空間を効果的に探索できるか?
  • RQ2グラフアテンション機構(GGA)を統合することで、RLエージェントのデータフロー依存関係およびマッピング品質に関する推論能力はどのように向上するか?
  • RQ3無効なアクションの出力マスクは、SEマッピングタスクにおける学習効率および最終的な報酬にどの程度寄与するか?
  • RQ4ノードのイテレーション順序(例:トポロジカル vs. ランダム)は、学習されたマッピングの成功確率および品質にどのように影響するか?
  • RQ5事前学習済みRLモデルを新しいワークロードに微調整することで、初期学習から開始する場合と比較して収束が速くなり、性能が向上するか?

主な発見

  • グローバルグラフアテンション(GGA)モジュールの追加により、さまざまなグラフの複雑さとSE構成において、最良スケジュールの総クロックサイクルが10%改善された。
  • 出力マスクを適用することで、無効なアクションに負の報酬を割り当てる手法と比較し、20%の報酬向上が達成され、サンプル効率と収束性が顕著に向上した。
  • ノード処理にトポロジカル順序を用いることで、より高い報酬とより安定した学習が達成された。これは、データフローの意味論と整合しており、予測負荷を低減した。
  • ランダムなIRグラフ上で事前学習し、FFTなどの特定ワークロードで微調整することで、初期および最終の報酬が、初期学習から開始する場合よりも高くなった。これは、知識転送の可能性を示している。
  • RLマッパーは、FFTや距離計算を含む多様なワークロードに対して、有効で最適化されたマッピングを効果的に発見できた。64タイルSE構成でも、シミュレーテッドアニーリングを上回る性能を示し、スパースな探索空間において優れた性能を発揮した。
  • 本フレームワークはスケーラビリティと適応性を示し、マニュアル作業の削減と応用デプロイの加速を実現するSEツールチェーンへの統合の可能性を示した。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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