128コアのVM

以前の記事で、64論理プロセッサを超える環境での Windows API の振る舞いを確認するために Threadripper を買うのは高すぎる、と書きましたが、API の振る舞いを確認するだけなら64コアを超える仮想CPUを持つVMを使えばいいことに気が付きました。ベンチマークとかはできませんけど。

ただし、1つのVMで物理CPUを超える数の仮想CPUを持つように設定した上でVMを起動できるVM実装は珍しいようで、VMware Workstation も VMware ESXi も VirtualBox も Windows 10 上の Hyper-V もダメです(設定自体ができなかったり、設定はできてもVM起動時に拒否されたりする)。しかし、 QEMU/KVM なら柔軟な設定が可能で、ソケット数もコア数も256まで行けますし、なんなら SMT で1コア当たり256スレッドなんて変態設定もできます。もちろん総スレッド数(=上記の3つの積)にはもっと低い制限があります。

というわけで、VMware Workstation 14 上の Ubuntu 19.10 の上の QEMU/KVM で1ソケット128コアなVMを作って Windows 10 をインストールしてみましたが、ある程度アップデートを適用した後に Windows が起動しなくなってしまいました。さすがにこんなことをすると安定性には問題があるようです(nested VM に起因する不安定性の可能性はある)。もっとも、安定していても一挙手一投足がクソ重いので、振る舞いを確認するにもある程度コア数の多い物理マシンを用意する必要があって、世の中そんなにうまくはいきません。

Trackback

no comment untill now

Add your comment now