5 ms·
Someone correct me if I'm wrong, but I think this is mainly because Apple does mostly translation, while Windows on Arm is pure emulation. This combined with t
by mtgx 6y ago
Someone correct me if I'm wrong, but I think this is mainly because Apple does mostly translation, while Windows on Arm is pure emulation.
This combined with the fact that Arm-based Windows PCs have mostly used mobile chips not optimized for the desktop use-case and form factor, is why the new Arm-based Macbooks leave any Arm-based Windows PCs in the dust in terms of performance.
- Siira 6y agoI’ve heard Windows emulation is also cached JIT.
- Tagbert 6y agoAlso, Apple has tuned the M and A series chips to perform well with Objective-c and Swift as used by iOS and Mac OS. One example is that they made some object operations 5x faster than on Intel chips. This speeds up loops and garbage collection significantly. Those are very common operations. Other vendors are using generic chips that were not tuned for the OS.
- syspec 6y agoMacOS / iOS apps are not garbage collected
- tambourine_man 6y agoReference counting is a form of garbage collection, although not usually refered to that way.
- mikechen233 6y agoRosetta 2 probably also have a JIT mode to deal with software that JIT produces x86 instructions like browsers and java VM. And of course you can do AOT or trans compile static x86 executables. I feel a lot of success of rosetta comes from the sheer perf of the m1 so even the jit and transcompile process is fast, and the execution of not well optimized code is fast. The firestorm cores is at least 60% faster than snapdragons cores per annandtech
- Joeri 6y agoWindows on ARM also runs x86 apps via translation, but in their marketing materials they call it emulation. x86 emulation works by compiling blocks of x86 instructions into ARM64 instructions with optimizations to improve performance. A service caches these translated blocks of code to reduce the overhead of instruction translation and allow for optimization when the code runs again. https://docs.microsoft.com/en-us/windows/uwp/porting/apps-on-arm-x86-emulation https://docs.microsoft.com/en-us/windows/uwp/porting/apps-on...