英特尔在 Windows 操作系统上与 AMD 等效的 HAXM
Posted
技术标签:
【中文标题】英特尔在 Windows 操作系统上与 AMD 等效的 HAXM【英文标题】:Intel's HAXM equivalent for AMD on Windows OS 【发布时间】:2014-10-05 11:12:24 【问题描述】:是否有任何相当于 Intel 的适用于 AMD(Windows 操作系统)的 HAXM,或者是否有人能够破解 HAXM 以使其在 AMD 处理器(Windows 操作系统)上运行?
此外,与 Google 提供的默认 Google API ARM / x86 系统映像相比,Genymotion (http://www.genymotion.com) 是否会明显更快?
我的确切开发机器规格:
操作系统:Windows 7 旗舰版 处理器:AMD FX 8120 8 核 2.81 GHz提前致谢!
【问题讨论】:
【参考方案1】:自 2019 年以来发布新答案。
TLDR:现在通过 WHPX 和 yes 在 Windows 和 Linux 上都支持 AMD,Genymotion 速度更快,因为它使用 x86 架构虚拟化。
来自 android docs(2019 年 1 月):
虽然我们建议在 Windows 上使用 HAXM,但也可以使用 带有模拟器的 Windows Hypervisor Platform (WHPX)。你应该使用 WHPX 与模拟器如果您使用的是 AMD CPU 或者如果您需要 同时使用 Hyper-V。
要在 Windows 上使用 WHPX 加速,您必须启用 Windows Turn Windows features on or off 中的 Hypervisor Platform 选项 对话框。要使对此选项的更改生效,请重新启动您的 电脑。
此外,必须在 Bios 设置中进行以下更改:
Intel CPU:必须启用 VT-x。 AMD CPU:必须虚拟化或 SVM 启用。
与 2016 年相比:
虚拟化扩展要求
在尝试使用加速之前,您应该首先确定是否 您的 CPU 支持以下虚拟化扩展之一 技术:
英特尔虚拟化技术(VT、VT-x、vmx)扩展 AMD 虚拟化(AMD-V、SVM)扩展
(仅支持 Linux)大多数现代计算机都可以。如果您使用较旧的计算机并且您不是 当然,请咨询您的 CPU 制造商的规格以 确定它是否支持虚拟化扩展。如果你的 CPU 不支持这些虚拟化技术之一,那么您 无法使用虚拟机加速。
虚拟化扩展通常通过您的计算机 BIOS 启用,并且在默认情况下经常被关闭。检查文档 让您的主板了解如何启用虚拟化 扩展名。
【讨论】:
我已经在 BIOS 中启用了 SVM 和 Hyper-V 功能,但是当我尝试创建新的 android 虚拟设备时,安装程序会下载英特尔的 HAXM 安装程序,该安装程序失败,因此我的模拟器启动但保持离线状态。我真的不知道在这种情况下该怎么办【参考方案2】:来自Android docs(2016 年 3 月):
在尝试使用这种类型的加速之前,您应该首先 确定您的开发系统的 CPU 是否支持其中一种 以下虚拟化扩展技术:
英特尔虚拟化技术(VT、VT-x、vmx)扩展 AMD 虚拟化(AMD-V、SVM)扩展(仅支持 Linux)CPU 制造商的规格应表明它是否 支持虚拟化扩展。如果你的 CPU 不支持 这些虚拟化技术,那么你不能使用虚拟 机器加速。
注意:虚拟化扩展通常通过您的 计算机的 BIOS 并且默认情况下经常关闭。检查 系统主板的文档,了解如何启用 虚拟化扩展。
大多数人都在谈论 Genymotion 更快,而我从未听过有人说它更慢。我绝对认为它更快,值得花大约 20 分钟的时间进行设置来尝试一下。
【讨论】:
根据文档支持AMD如果它有“AMD虚拟化(AMD-V,SVM)扩展(仅支持Linux)”(developer.android.com/tools/devices/emulator.html)跨度> @Rickard 仅支持 Linux 是关键,所以我遇到的问题是 Windows 操作系统不支持 AMD 处理器。 我用文档中的相关引用扩展了您的答案。我希望这会有所帮助。 不幸的是 Genymotion 需要购买许可证。 :( 可悲的是,当一家资源比 Google 少得多的第三方公司可以为 Google 的东西构建一些东西时,这要快得多。这告诉您有关 Google 的 Android 团队的哪些信息?【参考方案3】:您需要创建一个在 ARM 上运行的虚拟设备。在 X86 上运行的虚拟设备需要 Intel 处理器。 Android 指定的 AMD 支持仅适用于 Linux 系统。如果您希望在创建虚拟设备时获得更好的体验,请使用“存储快照以加快启动速度”而不是默认的“使用主机 GPU”。
【讨论】:
这是不正确的。我正在运行 AMD FX-8350,并且 AVD 管理器告诉我“您的 CPU 不支持所需的功能(VT-x 或 SVM)”,直到我在“Windows 功能”中启用了“Windows Hypervisor 平台”(在控制面板下 ->打开或关闭 Windows 功能)。虚拟 Android 设备运行迅速,对我来说没有问题。 @AdamHowell 谢谢你的建议帮助我解决了这个问题【参考方案4】:https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html
重要的
如果您的计算机中有 AMD 处理器,则需要满足以下设置要求: AMD 处理器 - 推荐:AMD® Ryzen™ 处理器 Android Studio 3.2 Beta 或更高版本 - 通过 Android Studio 预览页面下载 Android Emulator v27.3.8+ - 通过 Android Studio SDK Manager 下载 x86 Android 虚拟设备 (AVD) - 创建 AVD 带有 2018 年 4 月更新的 Windows 10 通过 Windows 功能启用:“Windows Hypervisor Platform”
【讨论】:
【参考方案5】:购买新处理器是一种解决方案,但对于我们中的一些人来说,这也意味着购买其他组件。或者,您可以只购买支持最低目标 API 级别的 Android 手机,然后在手机上运行您的应用程序。你可以在亚马逊、Ebay、craigslist 上找到其中一些手机(有时)。此外,这使您能够在您打算支持的最低硬件上实际运行。虽然这可能比在模拟系统上安装您的应用要慢一些,但它可能会为您省钱。
Android,设备测试/调试链接:http://developer.android.com/tools/device.html
【讨论】:
不回答问题。 对不起,我的回答对你没有帮助。取决于你是如何想到这个线程的,但这正是你需要看到的。针对用户将要执行的实际硬件进行测试非常重要(我认为它甚至可能在我的答案中的链接中这么说)。此外,当需要新处理器时,虚拟化甚至不再是一个好的选择。它是作为一种可能更昂贵的选择的替代品(实际上确实通过使其不再是问题来解决问题)。 您可以阅读@Rickard 的答案...支持 AMD cpu(使用 Linux),但不支持 Windows。这与购买新处理器无关,而只是谷歌的固执和懒惰做这样的事情。 ^^【参考方案6】:您好,要在 AMD 处理器上运行 avd 管理器,您需要在 Android Studio 中更新您的 SDK MANAGER: https://android-developers.googleblog.com/2018/07/android-emulator-amd-processor-hyper-v.html
你去工具->SDK MANAGER->SDK工具
然后查找适用于 AMD 处理器的 Android Emulator 和 Android Emulator Hypervisor Driver
选中复选框并单击应用或确定
【讨论】:
【参考方案7】:这个(Windows)限制应该公开宣布!对我来说问题是以下组合:Windows 10 + AMD CPU(带有 AMD-V/SMV)+/- Hyper Visor
我运行没有问题:Intel(使用 VT-x)+ Linux 或 AMD(使用 AMD-V)+ Linux
在此处链接到 Android Studio 问题:
https://developer.android.com/studio/run/emulator.html#accel-vm
Xamarin/Visual Studio 好像有workaround,不过我还没测试过:
如果您需要将 Hyper-V 用于其他模拟器,那么我建议您改用 Microsoft Android 模拟器,它使用 Hyper-V,也可以与 Xamarin Studio/Visual Studio 一起使用。您可以从here.免费下载
我会在确认它有效后更新它。希望我在购买新机器之前就知道这一点。
更新!!它不起作用“需要 Intel ...”显示错误消息
最终note:
*必须是修订版 F3 或更高版本,或者必须是具有 BIOS 支持的 F2。是否存在 SVM Disable 或其他虚拟化选项 BIOS 不能确保存在 BIOS 支持。你应该联系 OEM 以确保对 Hyper-V 的支持。
*一些 AMD BIOS 具有启用/禁用 SVM(虚拟化辅助)的选项
*某些 BIOS 将此列为 SVM Disable,这是一个双重否定,即您想禁用 SVM 禁用以启用 SVM。
*某些 BIOS 将其列为安全虚拟化,因此启用安全虚拟化将启用 SVM
*必须在 BIOS 中启用 No-Execute,有时这称为 NX 或 Execute Disable
*如果您想查找 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
【讨论】:
I 【参考方案8】:发布一个新的答案,因为它(几乎)是 2020 年。
Android 模拟器仍然只支持 HAXM 或 WHPX on windows。你甚至可能已经与后者结束了一天。
但是,如果您不喜欢它,PS4 模拟器开发人员之一正在为前者提供 AMD-V 支持:https://github.com/jarveson/haxm/tree/svm
【讨论】:
现在有Android Emulator Hypervisor Driver for AMD Processors。【参考方案9】:在我的主板上(ASRock A320M-HD with Ryzen 3 2200G)我必须:
SR-IOV support: enabled
IOMMU: enabled
SVM: enabled
在操作系统上启用 Hyper V。
【讨论】:
【参考方案10】:现在还有另一种选择:Android Emulator Hypervisor Driver for AMD Processors on Windows
在您可以安装和使用适用于 AMD 处理器的 Android Emulator Hypervisor 驱动程序之前,您的计算机必须满足以下要求:
采用安全虚拟机 (SVM) 技术的 AMD 处理器 64 位 Windows 10、Windows 8 或 Windows 7(不支持 32 位 Windows) 要在 Windows 10 或 8 上使用适用于 AMD 处理器的 Android Emulator Hypervisor 驱动程序,您必须在 Windows Feaures 对话框中关闭 Hyper-V。注意:安装某些软件可能会使 Hyper- V 重新开始。有关详细信息,请参阅禁用 Hyper-V。
【讨论】:
【参考方案11】:我有 AMD 锐龙处理器。这对我有用。
-
进入启动菜单。
转到高级设置。
启用 SVM。
将 UVM 设为自动。
保存并退出。
【讨论】:
以上是关于英特尔在 Windows 操作系统上与 AMD 等效的 HAXM的主要内容,如果未能解决你的问题,请参考以下文章