著者
稲垣 貴範 塩谷 亮太 安藤 秀樹
出版者
電子情報通信学会
雑誌
電子情報通信学会技術研究報告 : 信学技報 (ISSN:09135685)
巻号頁・発行日
vol.111, no.388, pp.37-45, 2012-01-19

データ・プリフェッチを実現する方法の1つに命令の先行実行がある.過去に我々は,単一スレッド環境で命令の先行実行を実現する手法として仮想リオーダ・バッファ(VROB:virtual reorder buffer)方式を提案した.この手法を用いれば,多くのロード命令のレイテンシが短縮され,大きな性能向上を達成できることを示した.しかし,VROB方式ではプロセッサ内に多くの先行実行命令を保持する必要があるため,素朴な実装では重要な資源(リオーダ・バッファ,レジスタ・ファイル,発行キュー,ロード/ストア・キュー(LSQ:load/store queue))のサイズを大きくする必要があり,クロック・サイクル時間に悪影響を与える.過去の研究では,この問題について,LSQ以外では解決されていたが,LSQだけは解決されていなかった.本論文では,先行実行ロードに対するin-flightストアへの依存を無視することにより,先行実行のために必要であったLSQを削除し,クロック・サイクル時間への悪影響を除去することを提案する.メモリ・インテンシブなプログラムが多いSPECfp2000ベンチマークを用いて評価を行った結果,十分に大きなLSQを持ち,正しく依存を守る場合に比べ,性能低下をわずか1%に抑えられることがわかった.情報処理学会研究報告計算機アーキテクチャ(ARC). v.2012-ARC-198, n.9. 2012, p.1-9 (c)情報処理学会