为什么Android模拟器的嵌套虚拟化非常非常慢



嵌套的KVM虚拟化应该有较小的开销,但VM中的Android模拟器应该是可用的。

当我在ubuntu 20.04 guest(在ubuntu 20.04主机上(中启动Android模拟器时,它会警告我,我正在进行嵌套虚拟化,因此速度会很慢。但它是痛苦的低,不仅仅是缓慢。启动到Android需要10分钟,是的,所有系统都是x86_64,甚至是Android映像。

我认为这与OpenGL有关,所以我在我的virt管理器上启用了OpenGL虚拟化,但速度仍然很慢。

我在我的Ryzen 7 2700x上尝试了同样的方法,它有16个内核,我把所有内核都给了VM,并把AMD gpu传给了它,Android模拟器也非常慢。

为什么?

问题出在QXL上。不知怎么的,在新的Ubuntu上速度很慢。使用VirtIO视频和可能的3D加速

您可以尝试使用anbox而不是VM。由于anbox不像VM&更像葡萄酒。用他们自己的话来解释:

模拟器(像VM(创建了一个完整的模拟系统,该系统有自己的内核等,而Anbox则在与主机操作系统相同的内核下运行Android系统。不需要像QEMU这样的仿真层。一切都直接在硬件上运行。这种方法还允许与主机操作系统进行更好的集成。

anbox.io

我必须警告你,它有点笨重,软件支持也不是最好的。不得不从github问题报告中手动安装内核模块,因为他们没有修复焦点ppa存储库。还有一些软件几乎不运行,或者根本不运行,所以。。。

对于KVM,可能首先需要启用嵌套虚拟化;优选具有x86图像:
https://docs.fedoraproject.org/en-US/quick-docs/using-nested-virtualization-in-kvm/
即便如此,运行QEMU并通过IP连接可能更有效。

最新更新