マルチスレッドプログラムがあります。スレッドプールの独自の実装を使用します。まず、プロジェクトの負荷は十分です。シングルスレッドに比べて、2 スレッドのプログラムの方が高速です。
スレッド数を 2 以上に増やすと、パフォーマンスが著しく低下します。明らかに、マルチスレッドのパフォーマンスの問題が発生しました。
その後、インテル® VTune™ Amplifier XE 2017 パフォーマンス解析の使用を開始し、このツールを VS2013 に統合しました。次に、Intel® VTune™ Amplifier XE のスター ボタンをクリックすると、驚くべきことが起こりました。プロジェクトが実行を開始し、plug が Data を収集します。プラグインを介してこのプロジェクトを開始すると、スレッド数が増えるにつれて、パフォーマンスが向上し、実行時間が短縮されることがわかりました。最大 20 個のスレッドを開くことができます。そして時間が20倍短縮
インテル® VTune™ Amplifier XE 2017 は、マルチスレッド・プログラムの動作モードを変更できますか? なぜこれが起こるのですか?私は長い間この問題に悩まされてきました。