高位合成における多面体最適化のためのスレッド構成手法  [in Japanese] Threading Method for Polyhedral Optimization in High Level Synthesis  [in Japanese]

Search this Article

Abstract

高位合成においては,並列実行可能な処理を如何にして自動的に抽出するかが課題となっている.近年,ソフトウェア向けのコンパイラ分野において,多面体最適化と呼ばれる入れ子ループの自動並列化手法が注目されている.これは種々の線形代数学的演算を行うことで入れ子ループ構造内における依存性を解析し,反復空間をタイル分割するものである.本稿では,代表的な多面体最適化アルゴリズムであるPLUTOを高位合成に応用することで,並列化された回路を自動設計する手法を提案する.まず,いくつかの論理スレッドを束ねて物理スレッドに割り当てることにより,PLUTOが生成する記述を高位合成向けに変換する手法を提案する.更に,依存性を考慮しつつRAMへのアクセスを最適化し,RAMのバンド幅を有効に利用する手法を提案する.In the field of high level synthesis, there has been an issue on automatic extraction of parallelism. Recently, automatic parallelization methods called Polyhedral Optimization are attracting attention in the field of software compilation. Polyhedral Optimization splits the iteration space of nested loops into tiles by analyzing the dependencies with linear algebra computations. In this research, we propose a method to design parallelized circuits automatically by applying PLUTO, that is the representative Polyhedral Optimization algorithm, to high level synthesis. First, we propose a method to convert descriptions obtained from PLUTO for high level synthesis by assigning multiple logical threads to a physical thread. Furthermore, we propose a method to exploit bandwidth of RAM effectively by optimizing access to RAM considering dependencies.

Journal

  • 研究報告組込みシステム(EMB)

    研究報告組込みシステム(EMB) 2013-EMB-28(21), 1-6, 2013-03-06

Codes

  • NII Article ID (NAID)
    110009551221
  • NII NACSIS-CAT ID (NCID)
    AA12149313
  • Text Lang
    JPN
  • Article Type
    Technical Report
  • Data Source
    NII-ELS 
Page Top