When choosing a file system for a hard drive partition or a USB drive, you need one that's going to run efficiently for all your needs. FAT32 is compatible with any system, making in the default choice for commercial USB drives, while Ext3 is the previous-generation file system in the Ext line and uses journaling. Speeds vary even between computers depending on hardware and operating system, and most users probably won't notice a difference during average use.
Analysis of the differences in performance between FAT32 and Ext3 is incomplete without considering the systems on which they run. While FAT32 is the most flexible file system, it was designed for Windows, while Ext3 only works with Linux systems. In their study "On Benchmarking Popular File Systems," Marri Vanninen and James Z. Wang noted, "In most cases, differences in performance are much more dramatic across platforms than between file systems on a given platform." In the same paper, Vanninen and Wang observe that performance has more to do with cache and memory buffers in the operating system than the file system.
Compared Transfer Rates
Vanninen and Wang tested transfer speeds in various file systems, including FAT32 and Ext3, in multiple situations, and they learned that with very small files in sequential write operations -- 128KB to 2MB -- FAT outperforms Ext3 with higher transfer rates, measured in megabytes per second. Beyond that, Ext3 performs better, until the two systems broke even at around 256MB. With a 2GB file, Ext3 performs better in both sequential reads and writers than FAT32.
In random operations, Ext3 falls short, though Vanninen and Wang observe this as a failing in Linux, because multiple Linux file systems have the same performance issues. Ext3 only briefly has a better transfer rate than FAT32; at 256KB, this advantages drops steeply and continues falling, while FAT32 remains relatively steady with a gradual decline in transfer rate as file size decreases.
Red Hat engineer Nick Boldt compared benchmarks between Ext3 and FAT32 in his blog post, "Ext3 vs. FAT32: fsck Benchmark." Fsck is the Linux bash command that checks your file system for consistency. Boldt tested two drives for each file systems: a 159GB FAT32 drive that was 87 percent full; an 89 percent full 40GB FAT32 drive; a 188GB Ext3 drive that was 97 percent full; and an 88 percent full 138GB drive. The 159GB FAT32 drive took about 43 hours to check, while the 40GB drive only took 10 hours. Meanwhile, it took just over two hours for the 188GB Ext3 drive, and less than an hour for the 138GB Ext3 drive.
Ext3 is just one of the file systems that uses journaling to cut back on data corruption, but when you're using Ext3, it writes more data than when you use FAT32, which can take more time. There are three levels of journaling available in Ext3: "Journal," which writes both metadata and content, taking the most time of the three options as it writes everything twice; "Ordered," the default option that only journals metadata and updates the disk before the metadata; and "Writeback," which is the fastest mode but works the same as standard file system writes.