さまざまなメモリ バス使用レベルでプログラムをテストしたいと考えています。たとえば、他のプロセスがメモリ バスの 50% を使用しているときに、プログラムが期待どおりに動作するかどうかを確認したいと考えています。この種の障害をどのようにシミュレートしますか?
私の試みは、複数のスレッドでプロセスを実行し、各スレッドがメモリの大きなブロックからランダムに読み取ることでした。これは私のプログラムに大きな影響を与えるようには見えませんでした。私のプログラムには多くのメモリ操作があるため、重大な障害が発生することが予想されます。バスを飽和させたいが、あまり多くの CPU サイクルを使用せずに、パフォーマンスの低下がバスの競合のみによって引き起こされるようにします。
ノート:
- Xeon E5645 プロセッサ、DDR3 メモリを使用しています