Live data from Hacker News

Why is Rosetta 2 fast?

dougallj.wordpress.com

81–90 of 367 posts

Re: Why is Rosetta 2 fast?

#81
post #6

Earlier quoted context omitted.

> I hope Rosetta is here to stay and continues developement. It almost certainly is not. Odds are Apple will eventually remove Rosetta II, as they did Rosetta back in the days, once they consider the need for that bridge to be over (Rosetta was added in 2006 in 10.4, and removed in 2011 from 10.7). > And I hope what is learned from it can be used to make a RISC-V version of it. translating native ARM to RISC-V should…

> They've got 15 years experience and essentially full control on ARM. Do they? ARM made it very clear that they consider all ARM cores their own[1] [1]: https://www.theregister.com/2022/11/07/opinion_qualcomm_vs_a...

The Qualcomm situation is based on breaches of a specific agreement that ARM had with Nuvia, which Qualcomm has now bought. It's not a generalizable "ARM thinks everything they license belongs to them fully in perpetuity" deal.

Re: Why is Rosetta 2 fast?

#82
post #17

It is quite astonishing how seamless Apple has managed to make the Intel to ARM transition, there are some seriously smart minds behind Rosetta. I honestly don't think I had a single software issue during the transition!

I finally started seriously using a M1 work laptop yesterday, and I'm impressed. More than twice as fast on a compute-intensive job as my personal 2015 MBP, with a binary compiled for x86 and with hand-coded SIMD instructions.

Are you me lol? I'm on my third day on M1 Pro. Battery life is nuts. I can be on video calls and still do dev work without worrying about charging. And the thing runs cool!

Re: Why is Rosetta 2 fast?

#83
post #15

I remember years ago when Java adjacent research was all the rage, HP had a problem that was “Rosetta lite” if you will. They had a need to run old binaries on new hardware that wasn’t exactly backward compatible. They made a transpiler that worked on binaries. It might have even been a JIT but that part of the memory is fuzzy. What made it interesting here was that as a sanity check they made an A->A mode where they…

If JIT-ing a statically compiled input makes it faster, does that mean that JIT-ing itself is superior or does it mean that the static compiler isn't outputting optimal code? (real question. asked another way, does JIT have optimizations it can make that a static compiler can't?)

Re: Why is Rosetta 2 fast?

#84
post #17

It is quite astonishing how seamless Apple has managed to make the Intel to ARM transition, there are some seriously smart minds behind Rosetta. I honestly don't think I had a single software issue during the transition!

Since this is the company's third big arch transition, cross-compilation and compatibility is probably considered a core competency for Apple to maintain internally.

And Next was multi-platform as well.

Re: Why is Rosetta 2 fast?

#86
post #17

It is quite astonishing how seamless Apple has managed to make the Intel to ARM transition, there are some seriously smart minds behind Rosetta. I honestly don't think I had a single software issue during the transition!

It has been extremely smooth sailing. I moved my own mac over to it about a year ago, swapping a beefed up MPB for a budget friendly M1 Air (which has massively smashed it out the park performance wise, far better than I was expecting). Didn't have a single issue.

My work mac was upgraded to a MBP M1 Pro and again, very smooth. I had one minor issue with a docker container not being happy (it was an x86 instance) but one minor tweak to the docker compose file and I was done.

It does still amaze me how good these new machines are. Its almost enough to redeem apple for the total pile of overheating, underperforming crap that came directly before the transition (aka any mac with a touchbar).

Re: Why is Rosetta 2 fast?

#87
post #35

Earlier quoted context omitted.

having total control on the hardware and the software didn't hurt for sure

Qualcomm (and Broadcomm) has total control on the hardware and software side of a lot of stuff and their stuff is shit. It's not about control, it's about good engineering.

That's really not the case, if you're in Microsoft or Linux's position you can't really change the OS architecture or driver models for any particular vendor.

That generality and general knowledge separation between different stacks leaves quite a lot of efficiency on the table.

Re: Why is Rosetta 2 fast?

#88
post #17

It is quite astonishing how seamless Apple has managed to make the Intel to ARM transition, there are some seriously smart minds behind Rosetta. I honestly don't think I had a single software issue during the transition!

It isn't their first rodeo: 68k->PPC->x86_64->ARM.

Rosetta 1 and the PPC -> x86 move wasn't anywhere near as smooth, I recall countless problems with that switch. Rosetta 2 is a totally different experience, and so much better in every way.

Re: Why is Rosetta 2 fast?

#89
Rosetta 2 is great, except it apparently can't run statically-linked (non-PIC) binaries. I am unsure why this limitation exists, but it's pretty annoying because Virgil x86-64-binaries cannot run under Rosetta 2, which means I resort to running on the JVM on my M1...

Re: Why is Rosetta 2 fast?

#90
post #17

It is quite astonishing how seamless Apple has managed to make the Intel to ARM transition, there are some seriously smart minds behind Rosetta. I honestly don't think I had a single software issue during the transition!

I have a single counter-example. Mailplane, a Gmail SSB. It's Intel including its JS engine, making the Gmail UI too sluggish to use.

I've fallen back to using Fluid, an ancient and also Intel-specific SSB, but its web content runs in a separate WebKit ARM process so it's plenty fast.

I've emailed the Mailplane author but they wont release an Universal version of the app since they've EOL'd Mailplane.

I have yet to find a Gmail SSB that I'm happy with under ARM. Fluid is a barely workable solution.

Post reply on HN