3

C++ / VistualStudio / WindowsXP で記述されたソフトウェアを使用したマルチコア (8+) アーキテクチャでパフォーマンスの問題に直面しています。

突然、L1 および L2 キャッシュと CPU->to->Memory 帯域幅のパフォーマンスがまったくわからないことに気付きました。

いくつかのツール (VTune、Glowcode などを含む) をテストしましたが、マルチコア アーキテクチャで負荷テストを行うと、すべてのツールが失敗します (これこそが、ツールが必要な理由です!)。

グラフを作成するのにそれほど派手ではないが、キャッシュ/メモリのパフォーマンスを少なくともいくつか示したり、アプリケーションを手動で計測するためのコードのスニペットを提案したりできる他のツールを提案できますか?

ありがとう!

4

5 に答える 5

1

それがパフォーマンスの問題の原因であると確信していますか? そうでない場合は、最初に他のことを検討することをお勧めします。

マルチスレッド プログラミングに関する優れた記事と、それに関するさまざまな隠れた問題がここにあります。多分それは助けになるでしょうか?

于 2008-10-03T17:00:31.653 に答える
0

Memtest86+が探しているものかもしれません。

于 2008-10-03T17:10:48.747 に答える
0

ハードウェア カウンターを使用して、L1 および L2 のミス率を測定できます。ただし、Windows プラットフォームでどのライブラリ パッケージを使用すればよいかよくわかりません。

于 2009-11-21T20:04:19.377 に答える
0

EVEREST テスト スイートがメモリ/CPU/キャッシュのパフォーマンスをチェックすると思います。このサイトをのぞいてみるといいかもしれません。ラヴァリスのエベレストページ

于 2008-10-03T17:32:17.003 に答える
0

cachegrindを試しましたか?もちろん、これはシミュレーターですが、実際の問題のほとんどを把握できます。

于 2012-08-29T12:28:22.077 に答える