Testing Out Linux File-Systems On A USB Flash Drive
Starting with the simple SQLite test profile running on the Corsair Flash Voyager GT 32GB, its performance was best with the EXT4 file-system. Just behind EXT4 though in terms of performance was EXT3 and then slightly behind that was ReiserFS followed by XFS. The Btrfs file-system on this flash drive performed two-and-a-half times worse than the EXT3/EXT4/XFS/ReiserFS file-systems. While the Btrfs file-system performed poorly, FAT32 actually did much worse. It took over 1400 seconds (or over 23 minutes) to run this SQLite database insertion test from the Flash Voyager GT, in comparison to Btrfs that took just under 15 minutes, or about five minutes for the other file-systems. There is quite the spread in results with the SQLite performance across the file-systems.
While most would not be running a mail server off a USB flash drive, for which the PostMark test profile simulates, but here the best performance was found with EXT4. EXT4 had a substantial advantage over FAT32, EXT3, XFS, and ReiserFS. With PostMark, Btrfs actually was in second place in terms of the quantitative performance. With this test, the FAT32 file-system was not far behind EXT3.
Next, we looked at the drive's write performance through IOzone with a 2GB file-size. The results were quite spread out, but EXT4 again finished with the best performance. Using EXT4 the write speed was at 19.93MB/s while just behind that was XFS at 18.47MB/s and then FAT32 at 18.33MB/s. Not far behind though was the Btrfs 0.19 file-system at 17.32MB/s while ReiserFS and EXT3 were at 10MB/s and 7MB/s, respectively.