特許
J-GLOBAL ID:200903075937931757
多重ループ向けデータプリフェッチ方法、プロセッサおよびプログラム生成方法
発明者:
出願人/特許権者:
代理人 (1件):
有近 紳志郎
公報種別:公開公報
出願番号(国際出願番号):特願平9-100429
公開番号(公開出願番号):特開平10-293692
出願日: 1997年04月17日
公開日(公表日): 1998年11月04日
要約:
【要約】【課題】 最内側ループ長が短かく、外側ループのループ長が長い多重ループに対しても、プリフェッチを有効に行うようにプログラムを変換する。【解決手段】 多重ループの最内側ループに対して、プリフェッチ対象ループの選択を行なう(502)。選択したループに対してインデックス集合分割を適用し、前半部分ループと後半部分ループに分割する(504)。前半部分ループには当該ループ自身で使用するデータのプリフェッチ命令を挿入し、後半部分ループには次プリフェッチ対象ループで使用するデータのプリフェッチ命令を挿入する(505)。【効果】 主記憶参照による待ち時間を十分に減少することができ、コンピュータプログラムの実行を高速化できる。
請求項(抜粋):
兄弟ループの関係にある2以上の最内側ループをもつ多重ループに対して、主記憶からキャッシュメモリへのプリフェッチに要するサイクル数と最内側ループの予測実行サイクル数とに基づいて分割すべき繰り返し回数を求め、当該最内側ループを、前記分割すべき繰り返し回数に基づく回数のループ繰り返しを実行する前半部分と、残りの繰り返し回数だけループ繰り返しを実行する後半部分とに分割し、当該最内側ループ自身で使用するデータに対するプリフェッチ命令を前記前半部分に挿入し、次に実行する兄弟ループの関係にある最内側ループで使用するデータに対するプリフェッチ命令を前記後半部分に挿入することを特徴とする多重ループ向けデータプリフェッチ方法。
IPC (2件):
G06F 9/45
, G06F 9/32 310
FI (2件):
G06F 9/44 322 G
, G06F 9/32 310 J
引用特許:
前のページに戻る