ForumsNews ← Team Notes: First post!

Orange clipboard

I'm starting Team Notes as a place for me and other folks on Team Madrona Labs to post more casual things for a smaller audience. If you're seeing this, I guess you're that audience. Welcome!

Typical posts might be special interests within our special interest: technical details about making the software, or about making the coffee, what we're listening to, rants on technology and how it's making everything better or making everything worse, recipes... you get the idea. If there's anything you've always wanted to know, please reply here with your ideas!

This orange clipboard has my notes from the current Sumu optimization. I'm figuring out how to run four of the Moog filters in parallel in around the time it previously took to run one, and thinking about how to generalize this solution in an elegant way. I still do big abstract thinking much better when I'm using actual pen and paper.

Making code faster with SIMD (Single Instruction, Multiple Data) processing is something I've enjoyed doing since Motorola first released their Altivec-enabled PowerPC processors. From Altivec to SSE and AVX and ARM NEON, the SIMD concept has remained largely the same across processor generations for the last 25 years. Compilers have gotten better at optimizing C++ code for SIMD, but to get the fastest results, the right algorithms and data structures have to be picked to kind of make the CPU happy, which is much higher-level thinking. And zooming out even further there are more human-centered tradeoffs to think of: what kind of code reduces the potential for bugs, what is redadable and maintainable, what will be easy to learn for new people coming aboard the project? Are we optimizing for just the latest Apple machines, or do we want this stuff to be runnable on a ten year old ThinkPad? The questions may start out purely technical, but very soon the answers start to reflect an organization's values.

Sumu makes heavy use of SIMD already in its oscillator banks. But the 4x filter object is one that had to wait until after the initial release. Between this and other optimizations, Sumu 1.2 will use around 30% less CPU than 1.1.3. And there's more optimizing to come. My goal is to run it on this ten year old ThinkPad over here!

All of this is good news. Nice idea to share these « casual things ».

This casual collection of thoughts feels like a welcome relief from the fast-paced content flood we are seeing online most of the time. Please keep it coming (when you feel like it)!

As a user of musical instruments without any coding experience, it is very interesting to see what thoughts go into developing the stuff we get to use later. Thank you for the insights!

gutter cleaning.. the chore that keeps on choring. looking forward to all the new things in the pipeline.. .v2 updates.. SUMU 1.2 etc.. sounds good to me. enjoy your post gutter scooping day.

Runnable on ten year old Thinkpads (and MacBooks) please!

Love the whole stuf from you!
Best software ever!

Thanks everyone! Sooooo much moss wants to grow on our roof here in the Pacific Northwest. I think I'm going to hire a professional.