Re:Huawei ExaGear: x86_64 apps on Arm 64-bit Linux systems
by StillBored on Tuesday January 12, 2021 @01:28PM
(#25751203)
That is possible today with qemu/TCG. The assumption with exagear and some of these other JITs is that they are faster.
[ Parent
| on HN ]
Re:Huawei ExaGear: x86_64 apps on Arm 64-bit Linux systems
by my123 on Tuesday January 12, 2021 @01:44PM
(#25751433)
And they are, Qemu isn't even remotely in the same performance category.
(it was intended to be easily retargetable to other platforms instead of being tailored to them, not even using the hardware FPU at all for example)
Re:Huawei ExaGear: x86_64 apps on Arm 64-bit Linux systems
by stsquad on Wednesday January 13, 2021 @08:53AM
(#25761946)
We do use the host FPU for a subset of floating point operations now. However it only really works for clean 32/64 IEEE FP so anything that goes through the x87 still needs software emulation.
Re:Huawei ExaGear: x86_64 apps on Arm 64-bit Linux systems
by my123 on Wednesday January 13, 2021 @10:25AM
(#25763107)
Wow, since which release did that finally happen?
(I might also look at the other issues that I have with TCG code quality sometime)
Might be worth it to update the wiki too.
Re:Huawei ExaGear: x86_64 apps on Arm 64-bit Linux systems
by stsquad on Wednesday January 13, 2021 @12:08PM
(#25764894)
Since v4.0.0 (see https://git.qemu.org/?p=qemu.git;a=commitdiff;h=a94b783952cc...). We are always up for improving the code generation quality but of course there is a trade off with JITs given we are not compilers. I suspect there are still big wins if we can come up with a reasonable solution for re-generating a hot-path of basic blocks with much better optimisation.
Re:Huawei ExaGear: x86_64 apps on Arm 64-bit Linux systems
by my123 on Wednesday January 13, 2021 @12:17PM
(#25765055)
Thank you. A tiered JIT will indeed cause much more optimisations to be made possible.
I made a Qemu backend targeting LLVM before, but that turned out to be way too heavy to be usable, I wonder if it's worth revisiting that idea nowadays...