Apple Silicon / M1

This forum is for developers of Rack Extensions to discuss the RE SDK, share code, and offer tips to other developers.
Post Reply
User avatar
pongasoft
RE Developer
Posts: 478
Joined: 21 Apr 2016
Location: Las Vegas
Contact:

26 Dec 2020

I got a new Apple M1 computer and I have been trying to see if Jamba works with it. Jamba per se has no problem, but right now I am a bit stumped with my testing. Ideally I would like to be able to build a universal (= x86_64 + arm64) plugin on Apple M1 and distribute only this as the mac version of the plugin. As of right now this is not possible: see forum thread https://forums.steinberg.net/t/apple-m1 ... 7-1/679973

You might say, why do I care it is VST?

Well, here is the catch: Reason runs VST plugins. My experiment shows that if Reason is built as a universal binary and runs the native code (arm64) then it won't be able to load any VST plugins that has been built with x86_64 which as of right now is about 100% of them...

This also seems to be what the Apple documentation on Rosetta states: "On Apple silicon, a universal binary may run either natively or as a translated binary. The system runs the native version whenever possible, but the user might opt to run the code using Rosetta to support older plug-ins." (emphasis mine).

It doesn't seem that there is a way for an arm64 application to load an x86_64 plugin which would then be translated by the Rosetta layer... Everything needs to go through the Rosetta layer...

Or in other words, Reason and pretty much any DAW supporting VST plugins, will be forced to run on Rosetta / translation layer and as a result not be able to benefit from the speed of M1 and on the contrary be slowed down by the translation layer.

And down the line, a few years from now when Rosetta will not even exist, it will be the death of all VST plugins that have not been rebuilt.

What a mess...

Yan

User avatar
Billy+
Posts: 4157
Joined: 09 Dec 2016

27 Dec 2020

Yeah unfortunately the more I read about the new apple hardware the more I realise I should start saving for a PC, I'm sure apple knows what it's doing but asking all those software developers to jump into it there vision is probably going to leave a good few of us stuck for a reasonable solution for some time to come.

User avatar
tronam
Posts: 486
Joined: 04 Mar 2015

28 Dec 2020

Billy wrote:
27 Dec 2020
Yeah unfortunately the more I read about the new apple hardware the more I realise I should start saving for a PC, I'm sure apple knows what it's doing but asking all those software developers to jump into it there vision is probably going to leave a good few of us stuck for a reasonable solution for some time to come.
There is always short term pain with these transitions and I certainly wouldn't recommend anyone invest in an M1 system for mission critical work, but this is just a hint of what's to come and I wouldn't assume Windows PCs will always stick with x86 as its primary, dominant CPU architecture in the future. The power per watt advantage is simply too dramatic to ignore, especially for laptops which represent the majority of consumer computers sold these days. Consider what the M1's GPU alone is delivering with just 5 watts. x86 isn't going away anytime soon, but there will be an enormous split and shift to ARM based CPUs across the whole industry, so software developers are going to need to get on board regardless. Windows will probably be the safest bet for backward compatibility though.

So far I'm really impressed with how well Rosetta 2 has been performing. Even my fairly large orchestral projects are running surprisingly well in Logic and none of the plugins, including Kontakt, are even native yet. This is the crucial element that Microsoft really failed to deliver on with their Surface Pro X and need to get right with their second generation device; strong emulation performance with non-native applications.

Maybe Reason Studios will add AU support with an upcoming version of Reason?
Music is nothing else but wild sounds civilized into time and tune.

jwd606
Posts: 85
Joined: 19 Sep 2017

28 Dec 2020

Fabfilter plugins run natively on M1, as does Nexus. Reaper runs in M1 as well, if you dislike Logic. And ProTools is supposedly on the way.

It's only been a couple of months, give it until next summer and I guess you'd be fine moving over. Whether Reason will run natively is a different question.

User avatar
pongasoft
RE Developer
Posts: 478
Joined: 21 Apr 2016
Location: Las Vegas
Contact:

28 Dec 2020

jwd606 wrote:
28 Dec 2020
Fabfilter plugins run natively on M1, as does Nexus. Reaper runs in M1 as well, if you dislike Logic.
As Reaper points out:
For maximum Intel plug-in compatibility, users with M1-powered Macs should use the Intel (10.15+) version rather than the native ARM64 beta version.
which is exactly what I was saying... Yes you can (easily) build an arm64 version of any DAW, but it won't be able to run the thousands and thousands of VST plugins that are Intel based. So at least, for the foreseeable future, it's not even an option...

User avatar
fieldframe
RE Developer
Posts: 1037
Joined: 19 Apr 2016

28 Dec 2020

I wouldn't worry. The original Rosetta was supported for four years (2006-2010). So it's reasonable to expect that Rosetta2 will be supported until at least 2024.

Think about it this way: If you were using a plugin right now that hadn't been updated by the developer since 2016, would you still use it in new projects, or would you be trying to move away from it? Any plugin that isn't running natively on Apple Silicon by 2024 will be in the same situation.

The music software industry moves slowly, but I think 1-2 years from now just about every major plugin will have migrated. Some will end up left behind, of course, but I think those will be a minority. That will allow another 2-year buffer for the stragglers, and of course, no one making music upgrades to a new MacOS the moment it comes out, so allow another year or so after that.

In the meantime, Rosetta2 is capable of running at 70-80% native M1 speed, which is already faster than many Intel processors can do natively. And newer M-series chips will be even faster. I think everyone will be running their DAWs in Rosetta mode for a couple of years, but once all the plugins you use have transitioned, it will be like a free 25% performance boost.

User avatar
tronam
Posts: 486
Joined: 04 Mar 2015

28 Dec 2020

Considering my main system is still on Mojave (two macOS versions behind), I'm definitely not a fan of change just for the sake of it and I do care about backward compatibility. But, I don't think that's what is going on here. Seeing this level of performance in a computer generating *zero* noise with nearly double the battery life is astonishing and will be nearly impossible to ignore for most active developers. Hopefully between now and the eventual deprecation of Rosetta in 4-5 years some innovative audio dev will have figured out a way to wrap abandonware VST plugins for future use. Even when encumbered by an emulation layer I doubt future Mx chips will struggle with running them at high levels of performance.
Music is nothing else but wild sounds civilized into time and tune.

User avatar
pongasoft
RE Developer
Posts: 478
Joined: 21 Apr 2016
Location: Las Vegas
Contact:

29 Dec 2020

Screen Shot 2020-12-29 at 08.06.05.png
Screen Shot 2020-12-29 at 08.06.05.png (96.04 KiB) Viewed 1906 times

I figured out what was wrong: update on my testing

The "new" conclusion:
This does not change the fact that an “old” (Intel) plugin will only run in an Intel DAW (C8) or a universal DAW which is forced to go through the Rosetta translation layer (right click on the executable and select Open using Rosetta).

For a plugin developer, moving forward, it makes sense to build a universal plugin because the matrix shows that it will run in all cases (column F). And this is achieved by setting this in your CMakeLists.txt (before project()):

Code: Select all

set(CMAKE_OSX_DEPLOYMENT_TARGET 10.14 CACHE STRING "") # whichever macOS version you are targeting...
set(CMAKE_OSX_ARCHITECTURES "x86_64;arm64" CACHE STRING "") # for universal

User avatar
miscend
Posts: 1955
Joined: 09 Feb 2015

29 Dec 2020

Thats exactly as it was with the last transition from PPC to Intel. Apple users are used to it by now. They will just stop using plugins that aren't updated for ARM and move on.

User avatar
tronam
Posts: 486
Joined: 04 Mar 2015

01 Feb 2021

Billy+ wrote:
27 Dec 2020
Yeah unfortunately the more I read about the new apple hardware the more I realise I should start saving for a PC, I'm sure apple knows what it's doing but asking all those software developers to jump into it there vision is probably going to leave a good few of us stuck for a reasonable solution for some time to come.
So, a month later and here is my probably-incomplete list of developers who have already released M1 native updates to their plugins:

Aberrant DSP: SketchCassette, ShapeShifter
Auburn Sounds: All plugins
AudioDamage: Most plugins (still a few left to update)
discoDSP: OB-Xd, Discovery, Discovery Pro, OPL, Schroeder, Scope
Fabfilter: All plugins
Melda Production: All plugins
reFX: Nexus
Reveal Sound: Spire
SIR Audio Tools: All plugins
Sound Device Digital/United Plugins: All plugins
TAL: All plugins
Tokyo Dawn Labs: Most plugins (a few left to update)
Valhalla DSP: Almost all have M1 betas available now

Many more are likely already released (I'm just not aware of them) or on the way shortly. I know Kazrog is planning to release theirs within the next few weeks and U-he should have a Hive M1 beta out very soon. Aside from Reaper, it'll be interesting to see which DAW developer can get theirs out first. It might end up being Studio One since they're the only one who committed to the first quarter of this year.
Music is nothing else but wild sounds civilized into time and tune.

User avatar
turn2on
RE Developer
Posts: 781
Joined: 13 Mar 2015
Contact:

01 Feb 2021

More problem with M1 - not plugins, not DAWs, not apps at all.
Audio interfaces! On mac no actual drivers for main part of the interfaces.
RME have beta usb drivers,
Apogge have only last new devices, No ELement series as example
Presonus not have drivers for new Tunderbolt and USB devices..
UAD?.. etc...?

so.... to swith on the M1, users must wait support of audio interfaces.
Im plan to swith on M1, but not find solution with multitrack recording solutions under ADAT that really stable work under M1 today.

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 1 guest