首页 > 解决方案 > 如何配置 Qemu 以提高 qemu-arm-static 的速度

问题描述

当我如下所示进行配置然后编译时,生成的 qemu-arm 的性能比 Ubuntu 18.04.3 (AMD64) 附带的 qemu-arm-static 差很多(大约 20 到 40)倍。

我使用了与 Ubuntu 附带的版本相同的分支(stable-2.11)。

我该如何配置以获得更高的性能?

./configure --static --target-list=arm-softmmu,arm-linux-user --extra-cflags=-O3 --extra-cxxflags=-O3 --extra-ldflags=-O3

标签: qemu

解决方案


我不确定 -O3 是否是个好主意——您可以检查 Ubuntu 软件包构建是否使用它;我怀疑它使用默认的 -O2 代替。事实上,一个好的第一步是在不做任何更改的情况下构建 Ubuntu 包(即使用 'apt source qemu' 获取包源并将其构建为 Ubuntu 包)并检查它是否具有与您看到的相同的性能提供二进制版本。

如果您构建的软件包的性能与 Ubuntu 构建的二进制文件不同:那么就会发生一些奇怪的事情,您需要对其进行调查。

如果您构建的软件包确实与 Ubuntu 构建的二进制文件具有相同的性能(即比您现在构建的任何东西都好):那么区别在于 Ubuntu 打包如何配置 QEMU,或者在构建环境中它是使用,或者在它正在使用的某些补丁中,这些补丁不在您当前正在构建的分支中。您可以尝试缩小差异。

除此之外,一般注意事项是 2.11 现在是 QEMU 的一个相当旧的版本,并且自 2.11 以来上游已经有了性能改进。但它们不是 20-40 倍,因此您绝对应该首先尝试确定为什么您没有获得与 Ubuntu 软件包二进制文件相同的性能。


推荐阅读