その1で共有GPUの確保と開放までができるようになりましたので、実際のゲストに適用してみます
ついでに?virt-managerでwindowsゲストをインストールする際のおすすめ設定の話とかも
その1で共有GPUの確保と開放までができるようになりましたので、実際のゲストに適用してみます
ついでに?virt-managerでwindowsゲストをインストールする際のおすすめ設定の話とかも
android-x86の8.1r1が出たので、KVM環境で動かしてみました。
Linuxデスクトップ上でAndroidアプリを動かす試みとしてはanboxとかもあり、これもコンテナの下で動くAndroidということで非常に興味深いプロジェクトですが、まだopenSUSE上でまともに動かすことに成功していないのと、この間arch上で動いているanboxを東海道らぐの会合で見ましたが、まだまともに動かないアプリも結構あり、じゃあ最近のKVM環境で動かしたらどうなんかなということで試してみました。
今回はGPUおたくらしくvirtio-gpu(VirGL3d)を使ってopenGL-ESを有効にしたandroid-x86を動かしてみます
KVMやXenといったLinuxハイバーバイザ上のVMでGPUを使用する場合、GPUパススルーを用いてVM一つにGPUをまるごと渡してしまうのが個人ユースでは一般的です
GPUパススルーを用いた場合、VM一つがGPUを専有してしまうため、使用できるVMの数に制約があったり、そもそもノートPCのように物理的にGPUが増設できない環境が存在したりと制約が多いのが難点でした
これまでも一部のエンタープライズ向けGPUではGPUの共有機能はサポートされていましたが、最近のカーネル(実用レベルになってきたのは4.18ぐらいから)ではIntel GVT-gと呼ばれるIntel iGPUの共有機能が使えるようになってきました。
今回はopenSUSE Tumbleweedを用いてGVT-gによる複数VMでのGPU共有を行ってみます
Nvidia GPUが存在するLinux環境では、NVIDIAのハードウェアエンコーディング/デコーディング機能であるNVENC/NVDECが利用可能ですが、openSUSEの標準パッケージとして利用可能なffmpegではNVENC/NVDECが有効化されていません。これはNVIDIAのライセンス規約により同機能を有効にしたffmpegのバイナリ再配布が許されていないためです。(おそらくほとんどのディストリビューション添付のffmpegも同じはず)
そこで、ffmpegをソースからビルドし、NVENC/NVDECを使えるようにします
Update your browser to view this website correctly. Update my browser now