What Is Rosetta 2?

Let me put some emphasis where it belongs in the title question:

What is Rosetta 2?

On the one hand we have the suggestion that on first run the x86 code is converted - taking a notional 20 seconds to convert to Apple Silicon binary.

On the other hand we have the suggestion that, once converted, they don’t run quite as fast as compiled for native execution.

I suspect, though, the “not quite as fast” includes the first-run conversion time. But I don’t know.

The other thing is that if the 20-second cost is incurred each time I upgrade a piece of software that’s going to get old very fast.

Thoughts?

I understand it to be a tool that builds a bridge between the app and your computer.
If the app changes, the bridge needs to be rebuilt (in 20 seconds).

But, once the bridge is built, the traffic can flow fast. It’s still got a bridge to cross though, so it’s not totally native speeds. So, I suspect the “not quite as fast” does not include that initial conversion time, and that the speed differences you observe will vary wildly depending on the app.

I also don’t think a 20 second delay every week/fortnight/month per app will be that much of a drag for me, personally.

1 Like

It’s akin to a byte code converter, the way Java works, for instance. On installation, it converts the x86 code to something more « digestible » by the M1 chip, but this code still performs less well than the native one. So it’s not full emulation, but it’s not running natively either.

Seems like 11.1 brings Rosetta improvements.

3 Likes

I do not have any 1st hand experience, but John Gruber wrote:

Rosetta is a marvel — the exemplification of “it just works”. x86-compiled apps run just about as fast as they do on the most expensive Intel-based MacBook Pros, and faster, by a long shot, than on the last and best Intel-based MacBook Air. Let that sink in: apps compiled for Intel run faster in translation on the M1 than they do on actual Intel CPUs in MacBook Airs and most MacBook Pros. (…) You just don’t have to worry about Rosetta, period. The first time you launch an Intel app, MacOS will ask you if you want to install Rosetta. Agree, and installation flies by in a jiff — mere seconds — and after that, you’ll just never notice whether something is compiled for Intel or native Apple Silicon. (…) Rosetta performs great and compatibility is seemingly seamless. This is a technical tour de force, a home run for Apple that will mostly go unheralded by typical users because the entire point is that they shouldn’t notice or care.

I am looking forward to read more about the technical details.

2 Likes

Some details from Apple: https://developer.apple.com/documentation/apple_silicon/about_the_rosetta_translation_environment

3 Likes

I like the sound of that. :slight_smile:

And I know very well what a bytecode converter is. The implication is it’s not native. That would explain the difference in speed from native. And I know, from first-hand experience, that Apple owning the silicon means they can tweak the silicon to suit running this - if they want to. (Like we did on mainframe several times.)