Apple provides the enhanced Universal 2 binary feature to its developers who wish to ship macOS apps that pack in code for both Intel and Apple Silicon systems. In other words, a universal binary runs natively on both Apple M1 and Intel-based Mac computers because it contains executable code for both architectures. However, certain edge cases may justify running a native Apple Silicon app under Rosetta emulation, and we show you how it’s done.
Universal binary and Rosetta 2
Native Apple Silicon apps run more efficiently on M1 Macs than translated apps that run with a little help of Apple’s excellent Rosetta translator, available in macOS 11.0 Big Sur and later. The first time you launch a Mac app on an Apple Silicon computer, you might be asked to install the Rosetta component to open it. Rosetta will then be available for any of your apps that need it.
If a macOS app only contains Intel binary, macOS will always execute it using the Rosetta translator on Apple Silicon systems. As mentioned, a universal binary runs natively on both Apple Silicon and Intel-based Macs as it packs in code for both chip architectures.
Rosetta 2 works in the background whenever you use an app built only for Mac computers with an Intel processor. It automatically translates the app for use with Apple silicon. In most cases, you won’t notice any difference in the performance of an app that needs Rosetta. But you should contact the app developer to inquire about a version that can natively use the full power and performance of Apple silicon.
It is entirely possible to force a universal app to run on Rosetta instead of natively.
Why would you want to do that?
Wouldn’t that be slower? Well, yes. So, why would you want to do that? As is always the case, different people will have different reasons to run native Apple Silicon apps in Rosetta.
Maybe you need to use a browser with an older plug-in that doesn’t work on M1 Macs. If you’re a developer, then you’ll appreciate being able to compare code execution in Rosetta emulation vs. native. Or perhaps you would simply love to see the speed difference for yourself between running Intel code through the Rosetta translator and without it.
Follow along with our tutorial, included right ahead, for step-step instructions showing you how to force universal Mac apps to run under Rosetta emulation instead of natively.
How to force a Mac app to use Rosetta
To reset a universal Intel + Apple Silicon app so that it runs Intel code through Rosetta emulation instead of native Apple Silicon one requires ticking a box in its Get Info window.
- Click the desired Mac app’s icon in the Finder.
- Click the File menu in the Finder and choose the option “Get Info”.
- In the Get Info window, tick the checkbox next to “Open using Rosetta”.
- Close the Get Info window.
And that’s all there’s to it.
Congratulations, you can now run the Mac app that contains both Intel and Apple Silicon code as if it was basically a non-optimized app written for legacy Intel-based Mac computers.
The Get Info trick is also a great way to identify universal Mac apps that need Rosetta or can use Rosetta by viewing the information labeled Kind:
- Application (Intel): This means that the app supports only Intel processors and needs Rosetta to work on any Mac with Apple Silicon.
- Application (Universal): This denotes the app that supports both Apple Silicon and Intel processors, and uses Apple Silicon by default.
Before singing off, if you’re using an older Intel-only app without Apple Silicon code, you won’t see the option “Open using Rosetta” or it will be greyed out.