是否有类似于Intel的HAXM的AMD等效产品(Windows操作系统),或者是否有人能够破解HAXM以使其在AMD处理器上工作(Windows操作系统)?
此外,与Google提供的默认Google API ARM / x86 系统映像相比较,Genymotion(http://www.genymotion.com)会更快吗?
我准确的开发机器规格如下:
- 操作系统:Windows 7 Ultimate
- 处理器:AMD FX 8120 8 Core 2.81 GHz
是否有类似于Intel的HAXM的AMD等效产品(Windows操作系统),或者是否有人能够破解HAXM以使其在AMD处理器上工作(Windows操作系统)?
此外,与Google提供的默认Google API ARM / x86 系统映像相比较,Genymotion(http://www.genymotion.com)会更快吗?
我准确的开发机器规格如下:
2019年更新:发布新答案。
简短概述:现在通过WHPX和yes,AMD在Windows和Linux上都得到了支持,Genymotion更快,因为它使用x86架构虚拟化。
来自Android docs(2019年1月):
虽然我们建议在Windows上使用HAXM,但是如果您使用的是AMD CPU或需要同时使用Hyper-V,则可以使用Windows Hypervisor Platform(WHPX)与模拟器一起使用WHPX加速。
要在Windows上使用WHPX加速,必须在“打开或关闭Windows功能”对话框中启用Windows Hypervisor Platform选项。要使此选项的更改生效,请重新启动计算机。
此外,必须在BIOS设置中进行以下更改:
Intel CPU:必须启用VT-x。 AMD CPU:必须启用虚拟化或SVM。
与2016年的差异:
虚拟化扩展要求来自Android文档(2016年3月):
在尝试使用这种加速类型之前,您应首先确定您的开发系统CPU是否支持以下虚拟化扩展技术之一:
- Intel Virtualization Technology(VT,VT-x,vmx)扩展
- AMD Virtualization(AMD-V,SVM)扩展 (仅适用于Linux)
您的CPU制造商的规格说明应该指出它是否支持虚拟化扩展。 如果您的CPU不支持这些虚拟化技术之一,则无法使用虚拟机加速。
注意:虚拟化扩展通常通过计算机的BIOS启用,并且默认情况下经常关闭。 查找您系统主板的文档以了解如何启用虚拟化扩展。
大多数人谈论Genymotion更快,我从未听过有人说它更慢。 我绝对认为它更快,值得花费约20分钟来设置并尝试。
您需要创建一个运行在ARM上的虚拟设备。运行在X86上的虚拟设备需要Intel处理器。根据Android规定,仅Linux系统支持AMD支持。如果您想获得更好的虚拟设备创建体验,请使用“存储快照以加快启动”而不是默认的“使用主机GPU”。
https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html
重要提示
如果您的电脑使用的是 AMD 处理器,您需要满足以下设置要求才能运行 Android 模拟器: AMD 处理器 - 推荐:AMD® Ryzen™ 处理器 Android Studio 3.2 Beta 或更高版本 - 可通过 Android Studio 预览页面下载 Android 模拟器 v27.3.8+ - 可通过 Android Studio SDK 管理器下载 x86 Android 虚拟设备(AVD)- 创建 AVD Windows 10 并安装了 2018 年 4 月更新 启用 Windows 功能:“Windows Hypervisor Platform”
https://developer.android.com/studio/run/emulator.html#accel-vm
Xamarin/Visual Studio似乎有一个解决方法,但我还没有测试过:
如果您需要为其他模拟器使用Hyper-V,则建议改用Microsoft Android模拟器,它使用Hyper-V,并且也可以与Xamarin Studio / Visual Studio一起使用。 您可以从这里免费下载它。
我会在确认它有效后更新。真希望在购买新机器之前知道这个。
更新!! 它不起作用,“需要Intel…”错误消息显示
最终注意事项:
*必须是F3或更高版本,或者必须是具有BIOS支持的F2。在BIOS中存在或不存在SVM禁用或其他虚拟化选项并不保证存在BIOS支持。您应该联系OEM以确保支持Hyper-V。 *一些AMD BIOS具有启用/禁用SVM(虚拟化辅助)的选项 *一些BIOS将其列为SVM禁用,这是一个双重否定,即您要禁用SVM禁用以启用SVM。 *一些BIOS将其列为安全虚拟化,因此启用安全虚拟化将启用SVM *必须在BIOS中启用无执行,有时也称为NX或执行禁用 *如果您想查找F3 CPU,请参阅AMD指南http://products.amd.com/en-us/DesktopCPUFilter.aspx或 http://products.amd.com/en-us/OpteronCPUFilter.aspx?f1=Second-Generation+AMD+Opteron%e2%84%a2由于即将进入2020年,因此发布新答案。
Android模拟器仍然只支持HAXM或WHPX 在Windows上。甚至您可以使用后者来结束一天的工作。
但是,如果您不喜欢它,则现在正在进行AMD-V支持的工作,由PS4模拟器开发人员之一完成:https://github.com/jarveson/haxm/tree/svm
在我的主板上(ASRock A320M-HD与Ryzen 3 2200G),我必须:
SR-IOV support: enabled
IOMMU: enabled
SVM: enabled
在操作系统中启用 Hyper-V。
现在有另一种选择:Windows 上 AMD 处理器的 Android 模拟器 Hypervisor 驱动程序
在安装和使用 Windows 上 AMD 处理器的 Android 模拟器 Hypervisor 驱动程序之前,您的计算机必须满足以下要求:
- AMD 处理器,支持安全虚拟机(SVM)技术
- 64 位 Windows 10、Windows 8 或 Windows 7(不支持 32 位 Windows)
- 要在 Windows 10 或 8 上使用 Windows 上 AMD 处理器的 Android 模拟器 Hypervisor 驱动程序,您必须在 Windows 功能对话框中关闭 Hyper-V。
注意:安装某些软件可能会重新启用 Hyper-V。有关更多详细信息,请参阅禁用 Hyper-V。