答えは今でもそうであるように、「それはあなたが何をしているのかにかかっている」のです。
はい、そこに、より多くのコアを追加から収穫逓減されており、そこには常にでしょう あなたが一度に単一のアプリケーションを実行する場合。
適切に作成されたマルチスレッドアプリケーションでも、スレッド化されるタスクの多くは、ユーザーの見かけのパフォーマンスに影響を与えることなく、マシン内の最も遅いコンポーネント(ハードドライブ、ネットワーク)を待つように実行されます。これらは並列化を大きくしても改善できません。そのため、理論上のスピードアップの制限は、実用的な目的には到達できません。
マルチスレッド化されていない「大きな」アプリケーションはほとんどないことに注意してください(OSのタスクマネージャーで同等のものを確認してください。各プロセスに属している数を確認できるはずです。たとえば、私のFirefoxは現在31を使用しています。 )。
もちろん、相互に依存しない複数のアプリケーションを実行することは、これらの制限による制約を受けません。コアを追加すると、処理パフォーマンスをほとんど低下させることなく、より多くのアプリケーションを同時に実行できます(ただし、ハードドライブ、ネットワーキングなどのパフォーマンスは、それほどうまく拡張できません)。実際には、コアや通信パイプラインなどの間の作業の分散を管理するために避けられないオーバーヘッドがあるため、これでも収益が減少する可能性があります。
たとえば、このトムのハードウェアに関する投稿(2009年から)は、同時アプリケーションでのいくつかのマルチコアプロセッサのパフォーマンスを調べようとしています。クアッドコア、トライコア、デュアルコアのプロセッサーはすべてゲームのみで同様に動作しますが、同時AVGスキャンを追加すると、パフォーマンス(平均FPSで測定)がそれぞれ22%、40%、59%低下します。
したがって、1つの集中的なアプリケーションを実行すると、クアッドコアはデュアルコアよりもパフォーマンスを向上させませんでしたが、別の集中的なタスクが表示されるとすぐに、パフォーマンスが2倍になりました。残念ながら、より多くのコアとより集中的なタスクでこれがどれだけうまく拡張できるかを調査する他の多くを見つけることができません。
そして、IntelのTurbo Boost / AMDのTurbo Coreなどのプロセッサの最新機能に注意する必要があります。これらの特定の機能により、マルチコアプロセッサはコアをパークし(低速、低消費電力、モードに移行)、予備のエネルギーを使用してアクティブなままのコアをオーバークロックします。これにより、プロセッサはそれ自体を最適化して、できるだけ多くの処理能力を提供できます。提示されるタスクの数については可能な限り。