命令レベル並列アーキテクチャのためのコードスケジューラおよびレジスタアロケータの協調技法

書誌事項

タイトル別名
  • メイレイ レベル ヘイレツ アーキテクチャ ノ タメ ノ コードスケジューラ
  • Cooperation of Code Scheduler and Register Allocator for Instruction - level Parallel Architectures
  • ソフトウェア

この論文をさがす

抄録

命令レベル並列プロセッサにおいて,その並列性を最大限に活用した実行サイクル数の少ないコードを生成するためには,コンパイラによる最適化の技術が不可欠である.その主要な技術にコードスケジューリングとレジスタ割付けがある.コードスケジューリングでは,コードの移動やコピーによって新たな並列性を抽出することと,プログラムの並列度を落とさないように命令を配置することが重要である.また,レジスタ割付けでは,できるだけ並列性を落とさないようにレジスタを変数に割り付けることが重要である.本論文では,並列性を落とさないコードスケジューリングとレジスタ割付けを実現するために,レジスタリソースの制約をまず満たし,コードスケジューラがその情報とプロセッサのリソースの情報を用い,並列化コードを生成する方法を提案する.レジスタ割付けによって低下した並列性をコードスケジューラが回復することで,プログラムに含まれる並列性とハードウェアリソースが持つ並列性の両者を考慮したコードを生成できる.

For instruction-level parallel processors,to utilize its parallelism and obtain the code that has less execution time,the optimization of code sequences by a compiler is essential.Code scheduling and register allocation are its main optimization techniques.The code scheduler must extract parallelism in a program by moving and copying instructions,and schedule instructions to preserve the parallelism.Also,the register allocator must allocate physical registers so as not to reduce the parallelism.In our method,at first,a register allocator maps variables in a program to physical registers to satisfy the constraint of register resources,then a code scheduler extracts the parallelism based on the information on processor resources in addition to that of resolving register resources.As the code scheduler restores the parallelism that was reduced by the register allocator,a code sequence can be generated by considering both the parallelism of programs and that of hardware resources.

収録刊行物

被引用文献 (3)*注記

もっと見る

参考文献 (12)*注記

もっと見る

キーワード

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

問題の指摘

ページトップへ