私は科学アプリケーションでいくつかのパフォーマンステストを実行しており、アプリケーションのパフォーマンスに影響を与える可能性のあるすべての要素を考慮しようとしています(キャッシュサイズ階層、CPU速度、キャッシュラインなど、パフォーマンスに関係するもの)。ばかげた質問かもしれませんが、この質問が頭に浮かびますが、はっきりさせておきたいと思います。
*質問: *
私が正しくない場合は、お願いします.intとfloatまたはdouble値の処理コストはプロセッサで異なります。これは、CPU浮動小数点ユニット(浮動小数点値を計算するため)を使用しているためです。ここで、2 つの 2D 行列を同じ float または double 値で埋めて乗算するか、ランダムな float または double 値で埋めてから乗算するかの間に違いがあるかどうかを知りたいと思います。線量コンパイラは、すべての要素が同じ値を持つ行列に対してキャッシュを使用しますか?.
A と B のサイズが処理時間 (乗算など) に影響を与えるかどうかにかかわらず、 A と B は桁数が異なる数値にすることができる( AB ) のような浮動小数点値を処理します。また、投与量に違いがある場合、それを考慮するかどうかは重要ですか? . パフォーマンス カウンター ライブラリを使用してアプリケーションのパフォーマンスを測定できますが、使用するライブラリのオーバーヘッドのため、命令/フロップの変動がランダム値または I/D キャッシュ ミス、キャッシュ サイズ、問題サイズなどの他のパラメーターによるものであると断言することはできません。または他のパラメータ。
中古機 intel E4500 です。コンパイラ g++ 4.7.
ありがとう