
x86 で SSE などプロセッサの世代が変わると命令セットが微妙に拡張され、プロセッサを判別して SSE 命令などを使いこなすプログラムを VMM 上で動かしていると、ライブマイグレーションでクラッシュする。この問題を回避するために、どの世代のプロセッサでも共通の命令セットを VM に見せる機能が提供されている。Intel は
Intel VT FlexMigration [intel.com]、AMD は
AMD-V™ Extended Migration Technology [amd.com] と言っている。
しかし、共通の命令セットということは、せっかく拡張された命令セットがある新しいプロセッサが搭載されたマシンを導入しても、他のマシンに古いプロセッサが入っていると、その命令セットは使えなくなるということで、なんとも悲しい実装。動的にフックして云々すると重くなるからやめたと AMD の文書にはかかれているけど、だからといって諦めるのはなんだかもったないなぁ。
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.