0

VS2010、nsight 3.1、およびバンドルされたビジュアルプロファイラーを使用して、WindowsでCuda 5.5を使用しています。

ストアのみを行うおもちゃのカーネルがあり、nsight とビジュアル プロファイラーから異なるデータが表示されます。どちらを信頼すればよいですか?そして、なぜ私は異なる見解を得るのですか?

Nsight は 4.21MB のストアを示し、ビジュアル プロファイラは 71402 トランザクションを示し、これは 8.9MB を表します (それらすべてが 128B であると仮定)。その結果、Nsight によると、BW は 277GB/s、ビジュアル プロファイラーは 126.69GB/s です。

私のデータセットは 1024x1024 であるため、Nsight データはより現実に近くなっています。

編集

元の質問から多くの悪い仮定を削除しました。私はCPUとキャッシュの一貫性について少し考えていました。

アクセス パターン: 各スレッドは、次のように 1 バイト連続で 4 つのストアを実行します (dst は char*):

for (int i = 0; i < 4; i++) {
   dst[offset+i] = 0;
}

ビジュアル プロファイラ

Nsight

4

1 に答える 1