タイトルはほとんどすべてを語っています。VMが物事を処理する方法でこれが違いを生むかどうか、そしてあるメソッドが他のメソッドよりも望ましいかどうか、ただ疑問に思っています。
タイトルはほとんどすべてを語っています。VMが物事を処理する方法でこれが違いを生むかどうか、そしてあるメソッドが他のメソッドよりも望ましいかどうか、ただ疑問に思っています。
回答:
いいえ、VMは同じことを実行する必要があり、ホスト上の同じリソースを使用します。これは主に、OSまたはソフトウェアにCPUごとのライセンス要件がある場合に柔軟性を追加するために追加された設計上の選択です。
各ソケット/コアは、ホスト上の1つの物理コアを表します。スケジューリング要件のために、コアを増やすことは自動的に良いことではないことに注意してください。
コア/ソケットオプションの主な目的は、「物理」ソケットまたはCPUコアの数に基づいて実行時またはライセンスの要件があるソフトウェアに柔軟性を提供することです。
複数のソケットの組み合わせ対1つのソケット上の複数のコアの性能には差がありませんが、そこIS仮想マシンのCPUホットアド機能を有効にするか、必要な場合は、操作に若干の違いが。
VMware CPUホットアド機能を使用すると、実行中のVMにソケットを追加できますが、追加のコアは追加できません。奇妙なことに、これは私が職場で実稼働環境で遭遇するものであり、新しいVMの構成方法に影響を与えています。
一般的に言えば、パフォーマンスの違いはほとんどまたはまったくありません。
十分に複雑なOS は、(実装された)ソケットの配置に応じて、スケジューリングヒューリスティックを変更する場合があります(たとえば、一部のチップ設計ではコア間で共有されるキャッシュの使用効率を高めることができる同じパッケージ内のコアに密接に関連するスレッドを保持します)およびコア。仮想化されたセットアップでは、ハイパーバイザーが仮想マシン間のコアスケジューリングについてもかなり賢明でない限り、ハイパーバイザーがゲストVMのCPUアクセスをスケジュールする方法により、差はわずかであるか、完全に意味がありません。
Danが指摘しているように、複数のvCore / vCPU / bothを確認するために、タスクをベンチマークする(現実的な方法で:つまり、問題のVMが実行されている唯一のテスト環境ではなく、ホスト上の他のアクティビティで)実際に彼らのパフォーマンスにとって有益です。コアへのアクセスをスケジュールする方法により、遅延が発生し、メリットがなくなって実際に全体が遅くなります-かなりのCPUを使用するタスクで、同じホスト上の単一コアVMの小さなファームが非常に優れたパフォーマンスを発揮するというレポートを見てきました同じ数のハードウェアと同じ(「小さい番号2に1つ含まれる」)マルチコアVM(もちろん、ホストにはるかに大きなメモリ負荷がかかる可能性があります)。