Software Archive
Read-only legacy content

HAXM on QEMU

AG
Beginner
1,936 Views

Hello,

A question for the HAXM developers: is there any attempt (stable or not) to integrate HAXM into mainline QEMU (not just the Android emulator) ?

 

0 Kudos
5 Replies
Alexander_W_Intel
1,936 Views

Hi,

Good question. I think the main part is the kernel driver and the changes in QEMU itself are not really big. If you browsing the kqemu documentation it says that "Current versions of qemu (0.11 and up) has no support for kqemu anymore, focusing on kvm instead." Looks like the interest was not big enough to maintain this project. 

Alex

0 Kudos
AG
Beginner
1,936 Views

Hello Alex,

Thanks for the reply. But I'm not sure what is the connection between KQEMU (the old QEMU kernel driver) and HAXM (Intel's kernel driver).

It seems Intel's HAXM driver is actively being developed and maintained ( https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager   -  last updated a month ago ).

If I understand correctly, HAXM is the kernel driver part, and the user-space emulator part is based on QEMU - which means there is a branch of QEMU which uses HAXM (perhaps this: https://android.googlesource.com/platform/external/qemu ). This QEMU branch is very android-emulator-specific (and also seems to be based on older version of QEMU).

My question was: is there any attempt by Intel HAXM developers to integrate the HAXM/QEMU code into mainline QEMU (i.e. to accelerate QEMUs images running on intel host CPUs, regardless of Android emulation).

Thanks,

 - Assaf

 

0 Kudos
Alexander_W_Intel
1,936 Views

Hi Assaf,

HAXM is developed only for the Android emulator and therefore also based on the QEmu version from AOSP/Google like you already figured out. I'm not aware of any plans to integrate the patches into the mainline QEMU. 

Do you see a big need for that? As far as I know the main userbase of QEMU is on Linux and there is KVM. 

Thanks,
Alex

0 Kudos
AG
Beginner
1,936 Views

Hello Alex,

Alexander Weggerle (Intel) wrote:

Do you see a big need for that? As far as I know the main userbase of QEMU is on Linux and there is KVM. 

I guess "big" is in the eye of the beholder...

Since HAXM has drivers for Linux, Windows and Mac OS X, it would have been great to have such multi-platform hardware acceleration support for QEMU.

Specifically I'm interested in the Mac OS X variant - since all recent Apple computers use a capable Intel CPUs, it would be very beneficial to have a working hardware acceleration on them with QEMU. Whether it's considered "big need" by Intel - that's no for me to say.

For me it's "big" :)

A while ago there was some interest on the QEMU mailing list, and the response was "patches are welcome" ( http://lists.gnu.org/archive/html/qemu-devel/2013-08/msg02766.html ). But since the HAXM driver is proprietary, and the Android emulator is based on a very old QEMU version, it's a bit hard to get things done without Intel's help.

Thanks,

 - Assaf

 

0 Kudos
Alexander_W_Intel
1,936 Views

Hi Assaf,

let me forward your request to the HAXM team. It might help to push in that direction. 

Thanks for all your explanations on this topic!

Alex

0 Kudos
Reply