I just received my first Apple Silicon-based computer this past weekend. Of course I was excited to find out how all the Madrona Labs software worked on it, so I dove right into some informal tests and benchmarks.
None of my plugins are yet released in native versions for the Apple Silicon-branded ARM processor in the new Macs—rather, they run using Apple's Rosetta 2 emulator which translates their Intel code into ARM instructions. Kaivo is definitely capable of putting a heavy load on the CPU, so I used it as a basis for testing. Because Ableton Live is the hosting environment my customers use the most, and also because it's not yet released for native Apple Silicon, I did the bulk of my testing in Live 10. So the test is all in emulation, and hopefully gives a good general indication of what moving your existing software setup over to an M1 Mac would be like. I tested both the M1 and my 2015 MacBook Pro, which is my daily driver and a pretty typical machine for a lot of my customers out there.
I said above that these tests are informal. That means I didn't take the average of multiple runs, I just did my measurements by looking at Apple's Activity Monitor, and my reports of inferface speed are subjective. That said, I have seen the same behavior while working on the new Macbook Air over the last few days, and everything is consistent with the reporting I've read on these new computers.
Tests
Configurations tested:
New Air:
- MacBook Air (M1, 2020)
- 8GB RAM
- macOS Big Sur v. 11.1
Old Pro:
- MacBook Pro (Retina, 13-inch, early 2015)
- 2.7 GHz Intel Core i5
- macOS Mojave v. 10.14.6
Common software:
- Ableton Live 10.1.30
- Kaivo 1.9.4
All tests were run at 48000Hz, with Live's sample buffer size set to 512. Built-in audio was used. Each voice used the factory patch "peaking lights," a high-CPU patch with all the resonators and body code in use.
I looked at the CPU percentage used when no Kaivo windows were visible. In addition, I noted if there were any audible glitches, how Live's UI performed with one Kaivo window showing, and how warm the computer was. Here's the data I collected:
Test 1: 32 voices of Kaivo (4 instances x 8)
New Air:
%CPU: 138, ± 1
glitches: none
UI: a bit slow but usable
heat: warm
Old Pro:
%CPU: 310, ± 10
glitches: many
UI: unusable
heat: warm, fan audible
Test 2: 16 voices of Kaivo (2 instances x 8)
New Air:
%CPU: 82, ± 1
glitches: none
UI: fast
heat: warm
Old Pro:
%CPU: 133, ± 5
glitches: intermittent
UI: slow but usable
heat: warm, fan audible
Test 3: 12 voices of Kaivo (2 instances x 6)
New Air:
%CPU: 78, ± 1
glitches: none
UI: fast
heat: cool
Old Pro:
%CPU: 101, ± 2
glitches: no
UI: slow but usable
heat: warm
Discussion
An Ableton Live project with 32 voices (4 instances) of Kaivo is totally usable on the M1 Macbook Air, with only a little bit of UI slowdown evident with a Kaivo window open. The same project is definitely not runnable on my old MacBook Pro.
Interestingly, looking at the eight cores of the M1 running all these voices, it appears that only four of them are doing the heavy lifting. This probably accounts for the fast UI response even under the most load I tested. The M1 has four performance cores and four less powerful efficiency cores—my guess is that cores 5–8 here are the performance cores. Right now it takes more esoteric tools to really determine this.
On my old MacBook Pro, I can add up to around 12 voices of Kaivo before glitching is audible. (This is over two instances of the plugin. The same number of voices over more instances will take a little more CPU because of the overhead of each instance, but may be less glitchy because the scheduling is easier, soooo... it's complicated.)
It may not seem too amazing that a new machine is much faster than a five year old one. But remember, both Live and Kaivo are compiled for a different processor and running in emulation! This is an impressive feat, especially if one can remember the lackluster performance of the original Rosetta's PowerPC to Intel emulation.
I tested my five year old laptop against the M1, not to be mean, but because I don't have a newer one. Since the work that Kaivo is doing is basically CPU-bound, looking at relative CPU benchmarks for newer machines should give us a decent guess at how they would perform in the same test. Geekbench gives us the following numbers for multi core tests, where higher is faster: New Air: 7614 , Old Pro: 1358, Recent 13" MacBook Pro (13-inch Mid 2020): 4512. So going from my old Pro to a current 13" model should give us roughly (4512 / 1358), or three times the number of voices, or what the M1 can do in emulation.
Summary
If you have a Mac that's more than a couple of years old, the upgrade to any Apple Silicon Mac should be a big leap in speed, even when running applications that are not yet native. If you have a high end or more recent Mac, one that pulls in a Geekbench 5 multi-core score of around 5000 or higher, it probably makes sense to wait—either until your favorite apps are all native, or for the next generation of Apple Silicon computers.
my experience with the M1 (mac mini) has also been very good, better than I expected.
for Jamuary , Ive regularly been using the Soundplane, Kaivo and Aalto all running on the mini m1.
Soundplane App, Kaivom, Aalto,all running under Rosetta.
Plugins hosted mostly under Live 11 (beta) under Rosetta.
Today, I did a jam with vcvrack hosting Aalto, being driven by the soundplane.
all going really well , much more powerful than the MBP i7 I was using before.
(and wow final cut pro for video editing is just a dream!)
Hi All,
Have you tested Kaivo on M2 chips already? I have a M1 Mac Mini, in which Kaivo runs perfectly. On my new MacBook Pro M2, however, it is not working at all, unfortunately. Any ideas on why this happens?
I have not tested on M2 personally but I think a lot of my customers have M2 computers by now. If there is an issue on your new computer, I think it's more likely to be software related than to do with the M2 chip.
Can you please give more info about what you mean when you say it doesn't work? What specifically is the symptom? What did you expect to happen and what happens instead? Thanks.