I recorded my first album with a jazz quartet in 1991. OMG, 21 years ago last century – has it been that long? The original recording was released on cassette tape (!) and is now long out of print. Over the years I got requests for a reissue of this recording from friends and people curious about the music on that project. I had a DAT tape of the final mixes which I had fortunately transferred to WAV files before the tape died (those things have a limited life as I found out the hard way). Unfortunately whenever I’d listen to the mixes, they sounded dated and suffered from some fundamental issues that made them unpleasant to listen to:
Hard panning of the instruments. (makes mixes uncomfortable to listen to especially on headphones)
Relative levels of instruments were unbalanced
Center of mix lacked definition
Lack of dimension and air
Missing mastering attention
On a couple of occasions I tried using various mastering tools to rectify some of these problems. However the deal breaker was always the faulty imaging – anything I did would ultimately end up negatively affecting the rest of the mix without adequately addressing the fundamental problems. While working on SONAR X2 earlier this year, I saw R-Mix’s abilities to isolate a voice in a stereo field and remembered this project – would R-Mix be the tool that to use to fix that mix? I’ve always been a fan of Roland’s V-series technology, so the idea of virtual remixing piqued my interest. Continue reading “SONAR X2 R-Mix: Remix / Remaster Case Study”
This is a whitepaper (Utilizing Intel® AVX with Cakewalk SONAR X1) which I co-authored with Intel engineer Rajshree Chabukswar, highlighting the advantages of optimizing for the Intel AVX chipset, with a focus on digital audio processing in a modern DAW like SONAR X1.
We’re excited with our synergetic relationship with Intel, which allows us to take advantage of their bleeding edge technology in ways that directly beneft our users, allowing them to squeeze the most power out of their systems. While the paper is technical and requires an understanding of some low level programming, it also offers insight into the nuts and bolts of whats involved in optimizations for Intel CPU architectures in a modern DAW.
The paper features a real world case study of SONAR X1 code that was optimized in to take advantage of the benefits of the 256 bit AVX instruction set. If you have an Intel CPU from the Sandy Bridge processor family, it supports AVX and SONAR X1 will take advantage of it. (While AVX is an Intel instruction set, it has also been adopted by AMD will be available in their upcoming Bulldozer processors. )
Code which is optimized for AVX vectorization capabilities can work with 256-bit vectors, allowing working on 8 32-bit floating point values per iteration. In other words, this is twice the data throughput of earlier SSE instruction set! While this doesn’t necessarily translate to twice as fast, it is a huge step up in performance in many cases as the white paper illustrates.
The first step in any optimization task is what is referred to as “hotspot analysis”. In this phase you identify the bottlenecks in the code or that would benefit most from AVX optimization. We did analysis running through stress test projects and workflows that showed some classic hotspots. Once these were identified, the code was AVX optimized using the new AVX intrinsics available in Visual Studio 2010.
MSDN Channel 9 recently conducted a video interview with myself and Carl Jacobson (Marketing) where we discussed Cakewalk’s experiences porting to Vista, and the future of music technology. Here is the link to the interview.
As part of my job at Cakewalk, I’ve been working on making our applications support this new operating system from Microsoft. Some things have been easy and some not. Interestingly the stuff that ended up being the hardest to do were features that looked relatively simple on the surface. I’ll elaborate on some of this in future threads.
Here are several published interviews, where I discuss some of the work we’ve done with SONAR for Windows Vista.