Issue
I'm researching how ARM native applications can be compiled on x86 platforms and i've come across 2 topics (Houdini binary translator and porting) that I am having some difficulties with.
These are my questions? - What is the difference between binary translation and porting - Are the two both part of compiling an ARM native application to x86
Thank you for any help in advance
Solution
What is the difference between binary translation and porting
With binary translation, your app contains ARM NDK binaries, and the device translates the ARM instructions to x86 using libhoudini
. This results in a smaller APK file, as it only contains fewer NDK binaries. However, the resulting translation is slower than if the app shipped x86 NDK binaries to go along with the ARM ones.
With porting, you explicitly ship x86 NDK binaries along with the ARM ones. This results in a larger APK file but speeds up performance on x86 devices compared to libhoudini
.
In either case, you should test your code on x86 devices, as well as ARM devices. Also, do not forget that we now have 64-bit ARM and x86 CPUs as well.
Answered By - CommonsWare
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.