データ並列言語における疑似ベクトル処理のための実行方式

書誌事項

タイトル別名
  • データ並列言語における擬似ベクトル処理のための実行方式
  • データ ヘイレツ ゲンゴ ニ オケル ギジ ベクトル ショリ ノ タメ ノ ジッコウ ホウシキ
  • An Execution Method of Data-parallel Languages for Pseudo Vector Processing

この論文をさがす

抄録

データ並列言語で用いられるデータの数は 通常 利用可能なプロセッサ数を大きく上回るため 個々のプロセッサに対して複数のデータが割り当てられ 繰り返しによりSIMD実行が実現される.この繰り返し実行は プログラムのコンテキスト制御を行うために 単純な繰り返しではなく これまでにいくつかの実行方式が提案されている.一方 スカラプロセッサにおいて ループ長の長い繰り返し実行の際に生じるキャッシュミスによる性能低下を防ぐ機構に 疑似ベクトル処理機構がある.本論文では データ並列言語の実行方式について考察し 疑似ベクトル処理に適する実行方式を提案する.また 疑似ベクトル化の成功率を高めるループ分割方法を提案する.提案する手法をデータ並列C言語NCXの処理系に実装し 並列計算機SR2201を用いて性能評価を行った.その結果 本手法によりデータ並列言語で疑似ベクトル処理が利用可能となり プログラムの実行速度を向上できることを確認した.

Since the number of data used in data-parallel programs is generally larger than the number of available processors, multiple data are allocated to each processor and the SIMD execution is realized by iteration. This iterative execution is not obvious because it requires context control of the program, and some execution control methods have been proposed. On the other hand, pseudo vector processing is a mechanism which prevents performance degradation caused by cache fault during execution of a long iteration on scalar processors. In this paper, we analyze execution methods of data-parallel programs and propose a method that is appropriate for pseudo vector processing. Furthermore, we present a loop partition technique which enables to promote pseudo vectorization. We implemented the proposed techniques on our language system for the data-parallel C language NCX and evaluated the performance by using a parallel computer Hitachi SR2201. The result of evaluation shows that the proposed techniques make it possible to use pseudo vector processing on data-parallel languages and to increase the performance of programs.

収録刊行物

参考文献 (15)*注記

もっと見る

キーワード

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

問題の指摘

ページトップへ