仮想マシンのvCPUとコアの数の選択
さまざまなハイパーバイザー(VMWare、KVM、Hyper-Vなど)で仮想マシンを作成する場合、仮想マシンに割り当てられているすべての仮想プロセッサソケット(vCPU)が表示されない場合があります。この例では、8つのvCPUがKVM仮想マシンに割り当てられ、Windows10がゲストOSとしてインストールされました。ただし、WindowsはこれらのvCPUを(コアではなく)個別のプロセッサとして検出し、そのうちの2つしか使用できませんでした。
2コアのみを使用するWindows10仮想マシン
Windowsデバイスマネージャーを開くと、割り当てられたすべてのコアが8つの個別の仮想プロセッサーQEMU仮想CPUバージョン2.5以降として表示されることを確認できます。 。
同時に、Windows 10のプロパティ([コンピューター]-> [プロパティ])とタスクマネージャーには、2つのQEMU仮想プロセッサーしか使用できないことが示されています。
つまり、Windows 10は、コアをいくつ追加しても、2つのコアしか使用できません。同時に、同じハイパーバイザー上でWindows Server 2016を実行している仮想サーバーは、それに割り当てられている16個のvCPUすべてを見ることができます。
問題は、デスクトップWindowsバージョン(Windows 10 / 8.1 / 7)には、物理プロセッサ(ソケット)の最大数に制限があることです。 コンピューターが使用できるもの:
- Windows 10 Home – 1 CPU
- Windows 10 Professional – 2 CPU
- Windows 10ワークステーション–最大4 CPU
- Windows Server 2016 –最大64 CPU
ただし、この制限はコアの数とは関係ありません。仮想マシンのパフォーマンスを向上させるために、より多くのコアを備えたプロセッサを使用できます。 。ほとんどのハイパーバイザーは、vCPUをプロセッサー、プロセッサーコア、さらにはスレッドとして提供できます。つまり、8つのvCPUの代わりに、ソケットごとに4つで2つのvCPU(2つのソケット)を追加できます。仮想プロセッサをさまざまなハイパーバイザーのコアとして割り当てる方法と、それを最新のプロセッサで使用されているNUMAアーキテクチャにバインドする方法を見てみましょう。
KVMでの仮想コアとvCPUの管理
Windows 10を実行しているKVM仮想マシンで 、割り当てられたすべての仮想コアは個別のプロセッサと見なされます。
仮想マシンに割り当てられたすべてのCPUリソースを使用するには、8つのvCPUではなく、1つの8コアプロセッサ、それぞれ4コアの2つのvCPU、または2つのスレッドに4つのコアを持つ1つのvCPUが必要です。 KVM仮想マシンの仮想コアの割り当てを変更してみましょう。
仮想マシンをシャットダウンします:
# virsh shutdown w10testvm
–ここで w10testvm 仮想マシンの名前です
virsh
を使用したコンソールからのKVM仮想マシン管理の側面は次のとおりです。 。 KVM仮想マシンの現在のXML構成を表示します:
# virsh dumpxml w10testvm
VMのCPU設定を説明するブロックが必要です:
<vcpu placement='static'>8</vcpu> <cputune> <shares>1000</shares> </cputune> <resource> <partition>/machine</partition> </resource> <os> <type arch='x86_64' machine='pc-i440fx-rhel7.6.0'>hvm</type> <bootmenu enable='yes'/> </os> <features> <acpi/> <apic/> <pae/> </features>
ご覧のとおり、ここでは8つのvCPUが設定されています。構成を変更しましょう:
# virsh edit w10testvm
の後に次のブロックを追加します :
<cpu mode='host-passthrough' check='none'> <topology sockets='1' cores='4' threads='2'/> </cpu>
場所:
host-passthrough
仮想マシンがクラスタノードの物理プロセッサを認識するエミュレーションモードです-
sockets='1'
vCPU(ソケット)が1つあることを示します -
cores='4'
プロセッサには、ソケットごとに4つのコアがあります -
threads='2'
ieachコアには2つのスレッドがあります
構成ファイルを保存して、仮想マシンを起動します。 Windows 10ゲストVMにログインし、タスクマネージャーまたはリソースモニターを実行して、割り当てられたすべての仮想コアがWindowsに表示されることを確認します。
ホストの物理プロセッサ、 Intel(R)Xeon(R)Silver 4114 CPU 、システムプロパティに仮想の代わりに表示されるようになりました。
アプリが正しく機能するには2つのコアでは不十分だったため、VMの高負荷の問題を解決する方法は次のとおりです。
VMWareVMのvCPUあたりのコア数の設定
vSphereClientインターフェイスでVMWare仮想マシンのvCPU表示方法を変更できます。
- VMをシャットダウンし、その設定を開きます。
- CPUを拡張します セクション;
- ゲストOSがそれぞれ4コアの2つのプロセッサを認識できるように、VM構成を変更します。 ソケットあたりのコア数の値を変更します 〜 4 。これは、ゲストOSが2つの4コアCPU(ソケットあたり4コアの2ソケット)を認識することを意味します。
- 変更を保存してVMを実行します。
仮想マシンへのvCPUとコアの割り当てには、理解しなければならない側面がいくつかあります。
ソケットあたりのコア数を割り当てるときは、NUMAアーキテクチャがあるかどうかを確認してください (最近のほとんどのCPUで使用されています)。物理ソケット(NUMAノード)で使用可能なコアの数よりも多くのコア(およびvCPUの総数)をVMに割り当てることはお勧めしません。単一の物理NUMAノードに配置すると、仮想マシンは特定のNUMAノードで使用可能な高速ローカルRAMを使用できるようになります。そうしないと、プロセスは別のNUMAノードからの応答を待機する必要があります(時間がかかります)。
2つの別々の仮想ソケットをVMに割り当てると、ハイパーバイザーはそれらを異なるNUMAノードで実行できます。 VMのパフォーマンスに影響します。
必要なvCPUの数が、1つの物理ソケット(NUMAノード)上のコアの数よりも多い場合は、必要な数のコアを使用して複数の仮想ソケット(プロセッサー)を作成します。また、奇数のプロセッサを使用することはお勧めしません(1つのvCPUを追加することをお勧めします)。
仮想マシンのパフォーマンスを維持できます。
たとえば、ソケットあたり10コアの2プロセッサホストには次の構成を使用することをお勧めします(ハイパーを含む合計40個のvCPUが利用可能です —スレッド )VMのvCPUを構成する場合:
vCPU番号が必要 | VM設定の仮想ソケットの数 | VM設定の仮想プロセッサあたりのコア数 |
1 | 1 | 1 |
…… | ||
10 | 1 | 10 |
11 | 最適ではありません | |
12 | 2 | 6 |
…… | ||
20 | 2 | 10 |
たとえば、16個のvCPUを搭載したMicrosoft SQL Server 2016 Enterprise Editionを実行しているVM(ソケットあたり2コアの8ソケットの構成) )2ソケットxソケットあたり8コアのVMよりもパフォーマンスが低下します 。
また、一部のアプリケーションは、物理ソケットの数に応じてライセンスが付与されることを忘れないでください(以前のSQL Serverバージョンの場合と同様)。コアの数が少ない複数のプロセッサよりも、1つのマルチコアプロセッサのライセンスを取得する方が有利な場合があります。
-
Windows 10 および 11 の Microsoft Store で Mozilla Firefox を入手できるようになりました
(以下のアプリへのリンクで更新) Windows 10 および Windows 11 PC 向けの Microsoft Store は、本日、Mozilla Firefox を搭載した最初の主要な Web ブラウザーを歓迎します。これにより、人気のあるブラウザを Windows ユーザーが簡単に見つけてダウンロードできるようになります。Firefox は、Discord や Epic Games Store など、最近 Microsoft Store に登場したいくつかの有名なブラウザに続いています。 近年、Mozilla Firefox は、Google Chrome やその他の Chr
-
Windows PC 向けベスト 10 仮想マシン ソフトウェア (2022)
コンピューターで一度に 1 つのソフトウェアしか実行できないとしたらどうなるか想像してみてください。メールをチェックしたい場合は、現在のプログラムをオフにする必要があります。インターネットにアクセスしたい場合は、Word 文書または現在作業中の他のアプリを閉じる必要があります。かなり難しそうですよね? 一度に多数のアプリケーションを実行できることは「当然」と考えていますが、一度に複数のオペレーティング システムを実行することはほとんど考えていません。ありがたいことに、ベスト仮想化ソフトウェア (2021) 単一のマシンで複数の OS を並行して使用する作業が容易になります。 1 台の物理マ