私のLinuxマシンには、32個のvcoreがあります。
そしてlscpu
から、私は同じことを見ることができます。
私のCPUの場合、「コアあたりのスレッド数」は2です。
それで、私が実際に64のvcoreを持っているということですか?
lscpu
出力の「CPU(s)」行は、論理CPU(別名スレッド)の総数を示します。 VM内で実行されている場合は、VMに割り当てられている仮想コアの数(この場合は32)です。
lscpu
によって提供されるその他の情報は、より詳細な情報を提供し、最終的に論理CPUの数と一致するはずです:「コアあたりのスレッド」×「ソケットあたりのコア」×「ソケット」 。ホスト内の物理CPUの特性は、VM内の仮想CPUの特性とはあまり関係がなく、ホストCPUに2つのスレッドがある場合、割り当てにaddは影響しません。コアごとに、VM内で割り当てられたコアを乗算しません。
Linuxマシンに32個のCPUコアが割り当てられており、各コアに2つのスレッドがある場合、64個のスレッドがありますが、64個のコアはありません。
通常、一度に1つのコアのみを実行できますが、最近ではほとんどのCPUがハイパースレッディングの概念をサポートしており、CPUは現在のスレッドパイプラインのアイドルステージを見つけて別のステージを処理し、より優れたマルチプロセッシングを定義します。
ただし、Linuxマシンが仮想の場合、VMは、マシンのコアではなく論理スレッドを表示します。