I’m just about to add a new (and huge) disk to my studio PC and wanted to canvass for some opinions on the best filesystem to use to maximise Ardour performance. There doesn’t seem to be much info out there on which would be best and different filesystems are slightly better/worse at different things. Some of the reading I’ve done has indicated that XFS would be the best choice but there seems to be nothing definitive.
In my experience the “performance” based filesystems, XFS, etc come with a slight CPU cost and are not very cross-platform compatable. In all cases you’re much more likely to run into overall system issues before the filesystem becomes the bottle neck. Like said before mounting with the “noatime” option is important as it prevent the OS from having to update the access time adding a write operation for each file it reads. The best approach is go for stability/compatability and the ext filesystems are pretty much standard. If you also ever want to open this disk on a Mac as well as Linux use non-journaled HFS, or with windows+mac+linux just use NTFS. The compatablity woes are not worth the virtually unnoticeable performance differences.
I would go for maximum reliability and thus chose ext3 or ext4. You can rescue data with a hexeditor if neccessary. On paper XFS may look nice, but I have seen it lose data in a few occasions.
If you are using a mechinal hard drive, the performance will suck anyway. Either use a lot of RAM (it starts to be fun with >=8GB), or use a SSD to maximize your IOPs when working on really large projects.
Ext 3 (with -noatime) is proven and is already vastly superior to something like Windows NTFS which despite it’s flaws performs OK in DAW applications. Ext 4 is the darling right now but I’d still like to see a few more miles on it before I’d recommend it for something as vital as a professional DAW. My take on it FWIW.
I use ext4 for over a year on 4 16TB RAIDs that run 24/7 on heavy load. It is the default filesystem for Ubuntu for a few months now. I think that can be called stable
So I thought I’d throw in some experience I had recently when using SD cards as a field recording storage on my eeepc.
Ext3 on the sdcard performed significantly worse (even when mounted no atime) than fat32.
In that with fat32 I was able to record 4 channels of 96khz 32bit audio simultaneously. with ext3 It would record for about 2 minutes then ardour would stop recording with an error that the disk subsystem was unable to keep up.
So I have two thoughts about this.
One is that the SDcard memory controller is optimised for fat access patterns.
The other theory is that being a more complicated filesystem (relatively speaking) ext3 couldn’t get the cpu to shuffle blocks out to disk fast enough
Neither of these thoughts have been extensively tested.
On the subject at hand.
I use XFS on my mythtv box for recording tv and am reasonably happy with it’s performance there even tho most applications seem to be writing workarounds for bad filesystem behavior by fsyncing left right and centre.
if you choose ext3the standard advices is data=ordered as a essential mount option, In the case of audio with a reliable system data=journaled might give better throughput performance at the cost of some crash resilliance. (not that the behaviour of the system in a kernel crash is at all deterministic and all bets are off there anyway.)
On SSDs, BTRFs is a nice option. It is way more performant than ext3/4 and offers a few nice features like COW and CRCs. I would consider it production stable already.
On SSDs, BTRFs is a nice option. It is way more performant than ext3/4 and offers a few nice features like COW and CRCs. I would consider it production stable already.
Looks like it's worth trying next time I get a new SSD :-)