Google官方Android模拟器强化x86处理器性能,在计算机上多开游戏更流畅啦

有许多手机游戏的玩家,习惯在计算机上通过执行多个Android模拟器的方式,同时游玩多个游戏或同一游戏的不同账号,借以加速刷宝或练功的效率,然而Android模拟器偏低的效率对计算机的硬件配备来说却是一大考验,幸好Google在最新版官方Android模拟器中强化x86处理器性能表现。

先前Google在发布Android 11开发人员预览版的时候,也一并提供了Android 11系统镜像文件,同时也提高了Arm架构二进制执行档的执行效率。

先前的系统镜像文件采用完整Arm模拟功能(Full Arm Emulation),它会通过Arm函数库执行App,因此不支持编译x86架构衍生版本的App,这让执行于x86架构计算机的模拟器,以及搭载x86处理器的移动设备的App执行效率偏低。

而新的Android 11系统镜像文件则一改这个问题,它能在不影响整体系统性能的前提下,将Arm架构指令转换为86架构指令,能够有效降低执行Arm架构二进制执行档的性能虚耗。

全新的Android 11 x86系统镜像文件(中)支持ArmABI,,旧的Android 10镜像文件(右)则不支持。(图片来源:Google,下同)

新的系统镜像文件能够提高在x86系统执行Android模拟器的效率与兼容性。

不同于使用Kotlin或Java语言编译的程序会通过Android Runtime(ART)执行,如果程序使用C++语言的话,则会在编译过程中依目标设备的处理器架构,转换为对应格式的机器指令(Machine Instruction),所以一般的App中的C++部分大多兼容于Arm架构处理器,让一些App中以C++编写的部分功能(如QR Code扫描仪)不兼容于x86架构计算机,最终导致App无法正常执行。

在先前使用Android模拟器的情况下,如果要回避这个问题,就需要使用完整的Android模拟功能,将整个系统的Arm指令转换为x86指令,虽然可以达到兼容的效果,但会消耗许多运算性能,而且不法使用硬件加速和处理器虚拟化技术,造成在x86计算机上执行Android模拟器性能不高的问题。

新的Android 11 x86系统镜像文件不但可以兼容于原生x86环境,并可支持虚拟化技术,并可将Arm架构二进制执行档转换为x86架构格式,其中也包涵了libGLES、libvulkan等Android Runtime的重要函数库,可以降低内存访问需求并提升整体性能。

目前这款新的镜像文件已与Android 11 Developer Preview一并提供,用户可以通过Android Studio中的SDK Manager或Android Virtual Device Manage下载。

模拟器开发团队表示这项技术可以简化Android App开发人员的测试工作流程,并计划在未来将这项技术推广至更多API等级(API Level),以确保能更接近真实Android设备的行为模式。