xeon phi コアで vtune を実行したところ、シングル スレッド ベンチマークで 0.777 の CPI が得られました。ただし、単一スレッドの理論上の最大 CPI は 1.0 であるため、これが真実である可能性はほとんどありません。( https://software.intel.com/en-us/articles/optimization-and-performance-tuning-for-intel-xeon-phi-coprocessors-part-2-understandingで「理論 CPI」を検索してください)
vtune スレッド情報を確認して、他のスレッドが実行されていないことを確認しました。
- VTune CPI 情報:
Function / Call Stack Clockticks Instructions Retired CPI Rate Retiring Bad Speculation Back-End Bound Front-End Module Function (Full) ソースファイル開始アドレス
上記の情報から、CPI は 0.777 です。
- 関数 centered_3d の VTune スレッド情報:
239.616s -- 同時に使用される論理 CPU = 0
163.632s -- 同時に使用される論理 CPU = 1
上記の情報は、vtune が間違った計算を行っていることを意味しますか? 例: サイクル数または命令数を正しくカウントしない可能性はありますか?