The Many Parts of SoftRAID
SoftRAID is made up of three key parts: the application, the monitor, and the driver.
The SoftRAID application is used for setting up SoftRAID volumes and investigating problems. It doesn’t have to be running for you to use a SoftRAID volume and is usually only used a few times a month.
The SoftRAID Monitor is like the traffic sign at the side of the freeway that tells you about traffic conditions. Like the sign, it tells you when things are slowing down, or there is a problem you should deal with. It is always running in the background but isn’t required for your SoftRAID volumes to work. It just receives notices from the driver and puts up dialogs, and writes entries to the SoftRAID log whenever anything important happens.
The SoftRAID driver is really the critical piece that makes a SoftRAID volume so fast and reliable. It is running whenever you have a SoftRAID volume attached to your Mac. It gets called to perform every single read and write to a SoftRAID volume – often more than 10,000 times a second. We know that your important files rely on this piece of software, which is why we spend so much time testing and perfecting it.
SoftRAID Version 6 Beta Release Supports Big Sur
Why is SoftRAID version 6 still in beta? We have several additional features we want to add to the SoftRAID application. Rather than preventing users from upgrading to Big Sur, we decided to open the beta release of SoftRAID version 6 to everyone. We know this beta release is reliable as the driver has already passed through our test program and is a final release version.
We will continue to fix bugs in the application and refine the user interface before shipping the final release of SoftRAID version 6 in the coming months.
The Final Release of the SoftRAID Version 6 Driver Is Already Shipping
The final release of the SoftRAID version 6 driver has been tested extensively and is already shipping. We started testing this new version of the driver on Intel Macs when the first beta Big Sur was released. After four weeks of testing all supported RAID levels, we sent the driver to Apple for inclusion in the macOS Installer for Big Sur. Since mid-August, this driver has shipped with every beta release of Big Sur. The exact same driver now ships with the release version of the macOS Installer for Big Sur.
The SoftRAID version 6 driver which Apple ships is not limited in its performance and is able to rebuild RAID volumes normally. This is different from previous versions of SoftRAID driver, which Apple first shipped as part of the macOS Installer in 2005 with the introduction of Mac OS X 10.4. Previous versions of the SoftRAID driver, which were included in macOS Installers, all had limited functionality. For instance, the version 5 driver, which was included in the installers for macOS 10.11 – 10.15, did not perform rebuilds and had lower write speeds than the driver we shipped with purchased copies of SoftRAID. I am glad that the SoftRAID driver included in the macOS Installer for Big Sur does not have these limitations.
Does the SoftRAID Version 6 Driver Work With M1 Macs?
We have not yet released a version of SoftRAID that supports the M1 Macs. We purchased several prototype Macs with Apple silicon this past summer. While they were incredibly useful for converting our applications to native ARM code, they lacked Thunderbolt ports. The USB-C ports on the prototype Macs with Apple silicon were 1/4 the speed of Thunderbolt 3. This meant that any driver testing we did with these prototype Macs was not representative of the heavy loads the SoftRAID driver would sustain when used with Thunderbolt storage. This limitation of the prototype Macs prevented us from adequately testing the SoftRAID driver on Macs with Apple silicon.
I ordered one of the M1 Mac minis as soon as they were announced, and it just arrived last week. We have already started using it for reliability testing with a new version of the SoftRAID driver, which supports Macs with Apple silicon. Once it passes our normal driver test protocol, we will release a version of SoftRAID 6 that fully supports this new processor with all RAID levels.
Our Driver Testing Protocol
I know that users rely on our driver to keep their files safe and secure. This is why we extensively test the SoftRAID driver after every major modification to the source code. After these major changes, our standard test protocol includes running four Macs for five days on each of the RAID levels we support. We repeat this test both with HDDs and with NVMe SSDs to ensure that we don’t miss problems that show up either only with high latency storage (HDDs) or only with high bandwidth storage (NVMe SSDs). Our test tools duplicate the workload seen by a SoftRAID volume when many applications simultaneously access a volume. The tools write data patterns out to many files and then read them back and verify that the patterns are the same. We don’t accept the driver as having passed the test unless it can be completed on four Macs for five days for each RAID level. This is usually a total of 2 – 5 billion I/O operations per RAID level, the equivalent of 20 – 50 years of use by the average user.
Working with Apple for Every New macOS Release
I hate to say it, but I lose every summer because of Apple’s release cycle for macOS. As soon as the beta version of macOS gets released in June, I know I have many long days and weekends ahead tracking down bugs in SoftRAID and macOS and submitting bug reports to Apple. My family hates it as I am always reluctant to go on vacation until after the new version of macOS ships.
This summer was no exception. Of the more than 20 bugs I tracked down this summer, only two turned out to be in the SoftRAID source code. I was able to fix these quickly because of the great help I received from Apple engineers, many of whom understand the kernel’s inner workings so much better than I do. The remainder of the bugs were in the first beta Big Sur and were fixed before Apple shipped the macOS Installer to customers.
Due to all the hard work by Apple engineers, Big Sur looks to be the best macOS release I have seen in many years. I have actually been running it on the Mac I use for work and code development for the past two months. With all previous macOS releases, I had waited until January or February before I upgraded to the new version of macOS.
Let me know if you have any questions – I will try to answer as many as possible. Now it is time for me to go back and see how the tests of SoftRAID driver on the M1 Macs are doing…