***本記事にはプロモーションが含まれています。***
ゲストOS内のOpenGLの呼び出しをホストに伝えて、OpenGLの高速化を図るパッチが登場しました。Proof of conceptと言って、アイデアの検証をしてみたとのことですが、こちらで検証しようとしてもプログラムがうまく作れなくて検証できません。
LibGL.soというライブラリ作って、ゲストOS内のOpenGLの呼び出しを横取りし、ホストOSで普通のプログラムのOpenGLの関数の呼び出しに変換して表示するという仕組みみたいです。ユーザーモードネットワークの仕組みを、グラフィックの表示でも行うみたいな感じかな。
同じような仕組みで、Direct3Dを表示することもできるんじゃないかという気がします。かなりのハックが必要になると思いますけど。
ゲストの表示速度の遅さは問題でしたので、安定して動くようになるといいのですけど。ただ、高速化の仕組みには問題があって、ゲストのメモリを直接コピーしたりしていて、i386のLinuxホスト/ゲストでしか使えません。PCIの仮想ディスプレイアダプタをアクセスしてデータをやり取りする方法がいいという意見が出てましたけれど、作れる人がいるのかな。メンテナンスする人が現れないと、このまま消えていってしまうような気がします。
まずは、自分の目で確かめたいのですが、OpenGLをよくわかってなかったりするのでした。