質問伝播に基づく大域ロード命令集約

書誌事項

タイトル別名
  • Global Load Instruction Aggregation Based on Query Propagation

抄録

現在のプロセッサは,プロセッサの演算速度に比べて低速な主メモリと,主メモリよりも高速なキャッシュメモリを備えていることが多い.このような構成のプロセッサ上で,プログラムを効率的に動作させるためには,キャッシュメモリの有効な利用が重要である.キャッシュメモリは,プログラムの時間的局所性と空間的局所性を高めることによって有効に働くので,同じ配列へのアクセスを連続して行う場合に効果的である.著者らは,前研究において,データフロー解析を利用してプログラム全体を解析し,同じ配列へアクセスするロード命令を互いに近いプログラム点に移動させることによって,キャッシュメモリのヒット率を向上させる大域ロード命令集約を提案した.しかしながら,従来法は,ロード命令の出現ごとに,データフロー解析を行うので,解析コストが高くなる傾向にあった.本発表では,質問伝播と呼ばれる要求駆動型の解析方法を用いることによって,プログラムの解析範囲を限定し,解析効率を向上させる手法を提案する.本手法をCコンパイラ上で実装し,SPEC2000ベンチマークを用いて評価を行った.その結果,従来法と比べて,解析効率が平均で約63%向上することを確認した.

Most modern processors have some cache memories that are much faster than a main memory, and it is important to utilize these effectively for efficient program execution.The cache memories function well if temporal or spatial localities in the program are enhanced. Therefore, the cache efficiency can be improved by making accesses to the same array continuous. We previously proposed global load instruction aggregation (GLIA), which reorders load instructions in the way that ones accessing to the same arrays were aggregated. Because GLIA exhaustively analyzes the entire program based on dataflow analysis to each load instruction, this is costly. We propose a technique to realize the GLIA based on demand-driven analysis which is called query propagation in order to restrict the program region to be analyzed. We have implemented our technique in a real compiler, and evaluated it on SPEC benchmarks. The experimental results show that our technique can decrease analysis efficiency about 63% in average.

収録刊行物

キーワード

詳細情報 詳細情報について

  • CRID
    1050574047096906880
  • NII論文ID
    170000078567
  • Web Site
    http://id.nii.ac.jp/1001/00095504/
  • 本文言語コード
    ja
  • 資料種別
    conference paper
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ