This may be a naïve question, but are plugins built for 64-bit Intel processors supposed to run on the new ARM-based M1 Macs using Rosetta? I can see 3 possibilities:
that just won’t work at all
it works just fine via Rosetta, which emulates the 64-bit Intel code on the M1
same as 2. but too slow to actually work properly for audio-processing code
Or does it depend entirely on how the host loads plugins?
#2 - I’m seeing about 30% performance hit. Plugins and host must be same CPU architecture. For AU Apple has added an out of process host, so ARM hosts can load Intel plugins. It would be up to each host to implement something like this for VST. Downside is AU plugins can no longer identify what host they are running under.
contemplate the case of the Logic host process, I guess, right?
Not as simple as it was.
When running on Apple Silicon, Logic behaves differently.
But the actual sandbox host process is provided by macOS
(Available since Big Sur). Currently it is used by Logic (and GarageBand I assume).
The process name in Activity Monitor gets the host name.
So it might be possible to filter it from there.
Thanks everyone for the insights! So in principle it could work with a performance hit, and some things need to be adjusted in JUCE.
I will at some point bite the bullet and buy an M1-based Mac, although I’m also looking forward to this (if it’s only for sporadic testing): “Apple M1 Chip – EC2 Mac instances with the Apple M1 chip are already in the works, and planned for 2021.” (source: https://aws.amazon.com/blogs/aws/new-use-mac-instances-to-build-test-macos-ios-ipados-tvos-and-watchos-apps )
Due to code-signing issues relating to Big Sur I build on my intel Mac on Catalina. In Xcode you can build for “Any Mac (Apple Silicon, Intel)” which will create a universal binary. These work perfectly fine on the M1 Mac I have - they run correctly as arm.
Just tested my plugin with M1. With Rosseta mode everything is working.
With the last version of Cubase my plugin is in a blocklist (“Unsupported architecture”).
The build was made on intel Mac with selected Architecture “Standard Architecture (Apple Silicon, Intel)”.
What can be a problem? What should I check or what I missed?