Go Back   Cockos Incorporated Forums > REAPER Forums > REAPER Compatibility

Reply
 
Thread Tools Display Modes
Old 03-05-2021, 09:26 AM   #1
strat1376
Human being with feelings
 
Join Date: Mar 2013
Posts: 19
Default reaper and Mac mini M1 compatability

Ive looked around and havent found any info on this. Does anyone know if Reaper is compatible with the new Mac mini with the M1 chip? also the new operating system. Looking to make the switch from PC to MAc
strat1376 is offline   Reply With Quote
Old 03-05-2021, 12:55 PM   #2
Dave 2099
Human being with feelings
 
Join Date: Dec 2017
Location: Maryland, USA
Posts: 185
Default

Yes, I'm using the ARM beta version of Reaper on my Mini with the M1 chip, and it works fine. There are some minor bugs (hence beta) but nothing that really affects what I can do. More just little things with the GUI that they're still working out.

If you install the Intel version it will work on your M1, but when I tried it the performance was terrible. The ARM version has had great performance so far.
Dave 2099 is offline   Reply With Quote
Old 03-06-2021, 06:46 AM   #3
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

What about plugins ?

Do you use E.G. Kontakt (native) for M1 ? Does this exist ?

-Michael (no idea about Macs...)
mschnell is offline   Reply With Quote
Old 03-10-2021, 06:40 PM   #4
Dave 2099
Human being with feelings
 
Join Date: Dec 2017
Location: Maryland, USA
Posts: 185
Default

Some of my non-native plugins continued to work, but a great many did not until I reinstalled them. With the Catalina (I think) update, Apple started requiring developers to register their applications, so unregistered applications (including plug-ins) will not work unless you can reinstall them and the .dmg or .pkg file uses the installation wizard. This is incredibly annoying as I lost quite a few plug-ins that I used a lot.

Incidentally, I would like to try tricking the OS into permitting other plug-ins by creating .dmg files and "installing" them. Does anyone know how to create a .dmg file that will run the installation wizard upon opening it, as opposed to simply opening a folder containing the plug-ins?
Dave 2099 is offline   Reply With Quote
Old 05-03-2021, 04:54 AM   #5
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

Quote:
Originally Posted by Dave 2099 View Post
Yes, I'm using the ARM beta version of Reaper on my Mini with the M1 chip, and it works fine. There are some minor bugs (hence beta) but nothing that really affects what I can do. More just little things with the GUI that they're still working out.

If you install the Intel version it will work on your M1, but when I tried it the performance was terrible. The ARM version has had great performance so far.
Do you use JS plugins? Those will bottleneck the Intel version of Reaper running emulated on M1 Macs.
maralatho is offline   Reply With Quote
Old 05-03-2021, 05:37 PM   #6
Dave 2099
Human being with feelings
 
Join Date: Dec 2017
Location: Maryland, USA
Posts: 185
Default

Yeah, that would explain it. I've heard others say that as well.
Dave 2099 is offline   Reply With Quote
Old 05-03-2021, 10:16 PM   #7
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Could you elaborate on that issue ?

-Michael
mschnell is offline   Reply With Quote
Old 05-04-2021, 04:27 AM   #8
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

I only know what I've managed to glean from these forums, but the gist is that Rosetta 2 in macOS only translates x86-64 code, and the JS plugins are x87, so there's a pretty huge performance hit.
maralatho is offline   Reply With Quote
Old 05-04-2021, 04:30 AM   #9
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

Straight from the horse's blog:

Rosetta2 is amazing -- just don't try to get it to run x87 code. EEL2 still generates x87 code, so JSFX on REAPER-intel on an M1 is incredibly slow. A quick benchmark in EEL2 gave me this: arm64 native: 1.25s, arm64 bytecode: 4.18s, rosetta2 x86_64 bytecode 9.18s, rosetta2 x86_64 x87 code 59s. (bytecode is EEL2 in portable non-JIT mode). The benchmark I used was actually pretty low on math, I think on DSP code it's probably even worse, like a 100x slowdown.

side note: so now, I'm trying to figure out the best way to deal with this. I did an EEL2-SSE branch a while back, and I have it working again, but it's about 20% slower than the x87 version in a lot of important cases. Tempted to make a jsfx-sse.dylib and only use it if running in Rosetta2. Also tempted to overhaul EEL2 to optimize for non-stack based architectures (which would also greatly improve the aarch64 version). The answer probably is something more incremental, like introduce some helpful optimizations into EEL2's code generation that will help get the SSE version up to parity. Of course, there will be little quirks that differ between the SSE and x87 versions, so those will need ages and ages of testing to get ironed out.
maralatho is offline   Reply With Quote
Old 05-04-2021, 09:36 AM   #10
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

I can't believe that (if you run ARM Reaper)

Reaper runs on RasPI, and same does not have Rosetta. Hence Reaper should be able to create native ARM code from JSFX EEL.

-Michael
mschnell is offline   Reply With Quote
Old 05-04-2021, 01:53 PM   #11
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

I think it's only an issue if you run the Intel version under Rosetta 2.
maralatho is offline   Reply With Quote
Old 05-05-2021, 02:37 AM   #12
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

... Which you would do if you need plugins that are not available in native ARM versions ?
-Michael

Last edited by mschnell; 05-05-2021 at 09:34 AM.
mschnell is offline   Reply With Quote
Old 05-05-2021, 04:17 AM   #13
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

If you need Intel plugins to work you have to run Reaper Intel in Rosetta 2. The way it works is, you either have to run Reaper ARM with ARM plugins or Reaper Intel with Intel plugins, but you can't mix ARM and Intel.

If you rely on JS plugins, use Reaper ARM.

Right now I'm working on a 2012 Mini, but I have an M1 Mini on order. Since my whole workflow is based around Waves plugins which haven't been converted to ARM yet, my plan is to use the Intel version until Waves updates its plugins. Hopefully that won't take too long. Since my current machine is so old (9 years), I'm expecting that, under emulation, I'll get pretty good performance on the M1 Mini, or at least good enough to satisfy me until my plugins get updated.

This video encouraged me to go for it:

https://youtu.be/xlvx_-drCE4

Last edited by maralatho; 05-05-2021 at 04:25 AM.
maralatho is offline   Reply With Quote
Old 05-05-2021, 08:17 AM   #14
EpicSounds
Human being with feelings
 
EpicSounds's Avatar
 
Join Date: Jul 2009
Posts: 7,568
Default

JS plugins absolutely have a huge CPU hit on M1.

For example, single instance of Sonic Anomaly Gate takes 5% !!


with ARM 64 build of reaper you have almost no 3rd party fx available.
__________________
REAPER Video Tutorials, Tips & Tricks and more at The REAPER Blog
EpicSounds is offline   Reply With Quote
Old 05-05-2021, 08:44 AM   #15
cyrano
Human being with feelings
 
cyrano's Avatar
 
Join Date: Jun 2011
Location: Belgium
Posts: 5,246
Default

Don't you think X87 is a typo?

As far as I understand Rosetta2, it translates some X86 code on the fly, when that code is called. Some other code is translated once, when first run and stored into the application's folder (inside the .app).

Apparently, the M1 processor also has some X86 commands built-in. These obviously don't need to be translated.

As said, that's as far as I understand it, as there isn't much documentation on the process.
__________________
In a time of deceit telling the truth is a revolutionary act.
George Orwell
cyrano is offline   Reply With Quote
Old 05-05-2021, 08:53 AM   #16
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

Quote:
Originally Posted by EpicSounds View Post
JS plugins absolutely have a huge CPU hit on M1.

For example, single instance of Sonic Anomaly Gate takes 5% !!


with ARM 64 build of reaper you have almost no 3rd party fx available.
Oh man, I've got this all confused.

So... JS... slow on ARM build.

What happens with JS when you run the Intel build on ARM?

Last edited by maralatho; 05-05-2021 at 09:01 AM.
maralatho is offline   Reply With Quote
Old 05-05-2021, 09:32 AM   #17
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Quote:
Originally Posted by EpicSounds View Post
JS plugins absolutely have a huge CPU hit on M1.
Seemingly only if you run Intel Reaper in Rosetta, but not if you run ARM Reaper.

Only Justin can tell us why exactly Rosetta has problems with handling the native Intel code Reaper creates when loading a JSFX.
-Michael
mschnell is offline   Reply With Quote
Old 05-05-2021, 09:36 AM   #18
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Quote:
Originally Posted by maralatho View Post
If you need Intel plugins to work you have to run Reaper Intel in Rosetta 2
Can't you use the Intel-only plugins in Reaper "Bridge" mode (i.e. as separate executable) to allow Rosetta to jump in ?

-Michael
mschnell is offline   Reply With Quote
Old 05-05-2021, 10:26 AM   #19
EpicSounds
Human being with feelings
 
EpicSounds's Avatar
 
Join Date: Jul 2009
Posts: 7,568
Default

Quote:
Originally Posted by maralatho View Post
Oh man, I've got this all confused.

So... JS... slow on ARM build.

What happens with JS when you run the Intel build on ARM?
js slow on intel build, that's where I noticed the problem
__________________
REAPER Video Tutorials, Tips & Tricks and more at The REAPER Blog
EpicSounds is offline   Reply With Quote
Old 05-05-2021, 10:27 AM   #20
EpicSounds
Human being with feelings
 
EpicSounds's Avatar
 
Join Date: Jul 2009
Posts: 7,568
Default

Quote:
Originally Posted by mschnell View Post
Can't you use the Intel-only plugins in Reaper "Bridge" mode (i.e. as separate executable) to allow Rosetta to jump in ?

-Michael
no they just don't pass reaper's startup plugin scan.
__________________
REAPER Video Tutorials, Tips & Tricks and more at The REAPER Blog
EpicSounds is offline   Reply With Quote
Old 05-05-2021, 10:36 AM   #21
EpicSounds
Human being with feelings
 
EpicSounds's Avatar
 
Join Date: Jul 2009
Posts: 7,568
Default

one of justin's comments on the topic, from March.

__________________
REAPER Video Tutorials, Tips & Tricks and more at The REAPER Blog
EpicSounds is offline   Reply With Quote
Old 05-05-2021, 11:34 AM   #22
maralatho
Human being with feelings
 
maralatho's Avatar
 
Join Date: Dec 2017
Location: Santa Barbara
Posts: 317
Default

Quote:
Originally Posted by EpicSounds View Post
js slow on intel build, that's where I noticed the problem
Ah, okay -- whew! I thought I had this all backwards for a sec.
maralatho is offline   Reply With Quote
Old 05-05-2021, 11:43 AM   #23
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Quote:
Originally Posted by EpicSounds View Post
no they just don't pass reaper's startup plugin scan.
here -> https://forum.cockos.com/showthread....light=rosetta2

Justin states:
"When using the ARM64 build, any VST3 plug-ins used will have to be ARM64 native, REAPER does not yet support VST3 bridging. Intel VST2 plug-ins can be used (bridged) from Intel to ARM64 .... use the ARM64 build and find native ARM builds of your VST3"

Moreover AFAIK, the developer builts already support VST3 bridging,

Michael (never touched a Mac )

Last edited by mschnell; 05-07-2021 at 03:22 AM.
mschnell is offline   Reply With Quote
Old 05-07-2021, 12:12 AM   #24
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 3,645
Default

Quote:
Originally Posted by cyrano View Post
Don't you think X87 is a typo?
No... x87 is what we used to do floating-point calculations on x86 CPUs before Intel added SSE/SSE2 support.
Tale is offline   Reply With Quote
Old 05-07-2021, 01:07 AM   #25
cyrano
Human being with feelings
 
cyrano's Avatar
 
Join Date: Jun 2011
Location: Belgium
Posts: 5,246
Default

Quote:
Originally Posted by Tale View Post
No... x87 is what we used to do floating-point calculations on x86 CPUs before Intel added SSE/SSE2 support.
Yes, of course. Sorry, googled it afterwards and remembered it was used as a thing once.
__________________
In a time of deceit telling the truth is a revolutionary act.
George Orwell
cyrano is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 07:19 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.