手当たり次第に書くんだ

飽きっぽいのは本能

VM パフォーマンス ハブ – CPU / メモリ / ストレージ / ネットワーク設計の入口

VM の性能は、個別の設定を足し算するだけでは安定しません。vCPU、NUMA、メモリ、ストレージ I/O、仮想 NIC、vhost、SR-IOV、DPDK はそれぞれ独立した話に見えますが、実際には host の物理資源を VM にどう見せ、どこまで仮想化レイヤを通すかという一つの設計問題です。

このページでは、VM パフォーマンス関連記事を読む順序とテーマ別の入口として整理します。まず全体像を見てから、CPU / メモリ / I/O / ネットワークの各論へ進む構成にしています。

まず読む記事

CPU / vCPU / NUMA

メモリ / HugePages

ストレージ I/O

ネットワーク I/O

Ubuntu / KVM 実装側の記事

この VM パフォーマンスカテゴリは設計・考え方を中心にしています。実際の Ubuntu 26.04 / KVM 環境で確認する手順は、次の記事に接続します。

読み進める順序

順序読む記事目的
1VM の性能ボトルネックを見分ける考え方まず VM のどこが詰まるのかを分けて見る
2単一 VM の vCPU はどこまで割り当てるべきかvCPU 数、物理コア、SMT、overcommit を整理する
3CPU / NUMA / pinning で VM パフォーマンスを安定させる考え方CPU / NUMA / pinning の配置を見る
4HugePages / TLB / NUMA で VM メモリ性能を安定させる考え方HugePages / TLB / NUMA でメモリ側を確認する
5VM ストレージ I/O を最適化する考え方ストレージ I/O のレイヤと形式を整理する
6VM ネットワーク I/O を理解する考え方仮想 NIC と virtio-net の標準経路を見る
7vhost-net / vhost-user で VM ネットワークを高速化する考え方vhost-net / vhost-user で仮想 NIC の処理経路を短くする
8SR-IOV / PCI Passthrough で VM ネットワークを高速化する考え方SR-IOV / PCI Passthrough で仮想化レイヤを迂回する
9DPDK で VM ネットワークを高速化する考え方DPDK / NFV / dataplane 設計へ進む

設計上の見方

  • 平均性能だけでなく、latency、jitter、tail latency、packet loss を見る
  • vCPU 数を増やす前に、物理コア、SMT、NUMA、他 VM との競合を確認する
  • CPU pinning は高速化設定ではなく、実行資源の扱いを変える設計として見る
  • HugePages はメモリ性能だけでなく、NUMA 配置と合わせて考える
  • raw / qcow2、virtio-blk / virtio-scsi、cache mode は運用要件と一緒に決める
  • virtio-net で足りない場合に、vhost、SR-IOV、DPDK の順に仮想化レイヤをどこまで迂回するかを考える

参考書籍

参考
書籍
参考書籍
作って理解する仮想化技術 ── ハイパーバイザを実装しながら仕組みを学ぶ

ハイパーバイザ、CPU 仮想化支援、メモリ仮想化、割り込み、仮想デバイスなど、VM の性能設計を低レイヤから理解したい場合の参考書籍です。価格や在庫はリンク先で確認してください。

Amazon で見る

このリンクは Amazon アソシエイトリンクです。

まとめ

VM パフォーマンスは、CPU、メモリ、ストレージ、ネットワークを別々に調整するだけでは安定しません。どの物理資源を、どの VM に、どの程度専有させるのか。どこまで仮想化レイヤを通し、どこから迂回するのか。この設計を明確にすることが重要です。

一般的な VM では virtio、共有 CPU、qcow2 でも十分な場合があります。一方で、NFV、低遅延処理、高 packet rate、I/O intensive な VM では、NUMA、pinning、HugePages、vhost、SR-IOV、DPDK まで踏み込む必要があります。まずは全体像を押さえ、必要な箇所だけ深く見るのが現実的です。

VM パフォーマンス ハブ – CPU / メモリ / ストレージ / ネットワーク設計の入口

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る