web-dev-qa-db-ja.com

Linuxマシンでvcoreの数を計算する方法

私のLinuxマシンには、32個のvcoreがあります。

そしてlscpuから、私は同じことを見ることができます。

私のCPUの場合、「コアあたりのスレッド数」は2です。

それで、私が実際に64のvcoreを持っているということですか?

1
yael

lscpu出力の「CPU(s)」行は、論理CPU(別名スレッド)の総数を示します。 VM内で実行されている場合は、VMに割り当てられている仮想コアの数(この場合は32)です。

lscpuによって提供されるその他の情報は、より詳細な情報を提供し、最終的に論理CPUの数と一致するはずです:「コアあたりのスレッド」×「ソケットあたりのコア」×「ソケット」 。ホスト内の物理CPUの特性は、VM内の仮想CPUの特性とはあまり関係がなく、ホストCPUに2つのスレッドがある場合、割り当てにaddは影響しません。コアごとに、VM内で割り当てられたコアを乗算しません。

5
Stephen Kitt

Linuxマシンに32個のCPUコアが割り当てられており、各コアに2つのスレッドがある場合、64個のスレッドがありますが、64個のコアはありません。

通常、一度に1つのコアのみを実行できますが、最近ではほとんどのCPUがハイパースレッディングの概念をサポートしており、CPUは現在のスレッドパイプラインのアイドルステージを見つけて別のステージを処理し、より優れたマルチプロセッシングを定義します。

ただし、Linuxマシンが仮想の場合、VMは、マシンのコアではなく論理スレッドを表示します。

1
rɑːdʒɑ