
私のプロセッサには 4 つの物理コアがあります。コアあたりの仮想コアは最大 8 つです。次の条件が当てはまりますか?
ハイパースレッディングが有効になっている場合、論理コアは4x 2 = 8個になります。つまり、最大仮想コアは8 x 8 = 64個になります。
ハイパースレッディングが有効になっていない場合、最大仮想コア数は 4 x 8 = 32 になります。 それとも、常に 4x8=32 仮想コアですか?
答え1
こんにちは。理解するのに役立つ基本事項がいくつかあります。1
. 物理コアの数が多いほど、パフォーマンスは向上します
。2. 単一の物理プロセッサ内の論理コアはプロセッサのマルチタスクに役立ちますが、専用の物理プロセッサがある場合と比べて優れているわけではありません
。3. ハイパー スレッディングは、単一の物理コアでマルチコア パフォーマンスを実現するプロセスです
。4. ハイパー スレッディングは論理コアを増やすものではなく、その実装はメーカーによってすでに固定されています
。5. ハイパー スレッディングにより、CPU 負荷をコアに分散できます。さらに分散が必要な場合は、タイム スライス、ラウンド ロビンなどのさまざまなテクノロジを使用して、物理コア内で負荷を分割します。
したがって、CPU に 4 つの物理コアがあり、コアごとに最大 8 つの論理/仮想コアがある場合、コアは常に 4x8 = 32 になります。
これが役立つことを願っています。 :-)
答え2
いいえ。この文脈では、論理プロセッサと「仮想コア」は同じものです。ハイパースレッディングを有効にすると、物理コアごとに 2 つの論理プロセッサが存在します。したがって、合計で 8 つの論理プロセッサ、または 8 つの仮想コア (どちらの用語を使用するかは自由です) が存在することになります。
ハイパースレッディングがない場合、物理コアごとに LP は 1 つだけになります。
答え3
VM/ハイパーバイザーのコンテキスト(Azure VM を念頭に置いて):
ハイパーバイザーは、VM にコンピューティングを割り当てる役割を担うソフトウェアです。2 種類のホスト プロセッサがあるとします。
- コンピューティング A: 4 つの物理コアを備えたハイパースレッド プロセッサ
- コンピューティング B: 4 つの物理コアを持つハイパースレッド プロセッサなし
2 つの VM を作成するとします。1 つはコンピューティング能力をあまり必要としない VM (VM X)、もう 1 つはコンピューティング能力を多く必要とする VM (VM Y) です。
計算A:
- ハイパーバイザーは1つの物理コアを1つの仮想コアとしてVM Xに割り当てます。
- VM Xは2つの論理コア、つまり2つのvCPUを取得します。
- つまり、VM Xには2つのvCPU、2つの論理コア、1つの仮想コア、1つの物理コアが関係しています。
- ハイパーバイザーは2つの物理コアを2つの仮想コアとしてVM Yに割り当てます。
- VM Yは4つの論理コア、つまり4つのvCPUを取得します。
- VM Yには4つのvCPU、4つの論理コア、2つの仮想コア、2つの物理コアが関係しています。
計算B:
- ハイパーバイザーは1つの物理コアを1つの仮想コアとしてVM Xに割り当てます。
- VM Xは1つの論理コア、つまり1つのvCPUを取得します。
- つまり、VM Xには1つのvCPU、1つの論理コア、1つの仮想コア、1つの物理コアが関係します。
- ハイパーバイザーは2つの物理コアを2つの仮想コアとしてVM Yに割り当てます。
- VM Yは2つの論理コア、つまり2つのvCPUを取得します。
- VM Yには2つのvCPU、2つの論理コア、2つの仮想コア、2つの物理コアが関係しています。
VM には物理コアというものはなく、仮想コア (仮想マシン自体が物理マシンのように見えるように物理コアのように見えるようにする) が存在します。ここでは、1 つの物理コアが VM の 1 つの仮想コアとして表示されるものと想定しています。ただし、ハイパーバイザーは 2 つの物理コアを結合して、抽象的なこれらは VM の 1 つの仮想コアとして扱われます (または、一般的には M 個の物理コアを N 個の仮想コアに抽象化できます)。論理コアはハイパースレッディング係数に基づいてその後に続きます。
vCPU の数は、仮想コア (つまり、基礎となる物理コアの数) がサポートする論理コアの数と同じです。[出典:アズール・アラン、ヴイエムウェア]
ソーステキスト(ソースハイパーリンクが壊れている場合):