Comment by technofiend
3 days ago
IO on many little files is dramatically faster in Linux on ext4 vs Windows thanks to NTFS' journaling overhead. So if you're doing development, you really want to do it inside wsl2.
3 days ago
IO on many little files is dramatically faster in Linux on ext4 vs Windows thanks to NTFS' journaling overhead. So if you're doing development, you really want to do it inside wsl2.
I think it's more complicated just than NTFS's design.
In my original comment I said that the difference is the Linux VFS for a reason. The slow part in NT is when you go from a filename to a handle. Doing things like caching lookups by name is, IIRC, the responsibility of the individual drivers. Linux does better at this by having a heavily optimized layer sitting between the filesystem driver and the caller. Doing tons of open(2)s is faster on Linux because of the overall kernel design.
Use a ReFS drive,
https://learn.microsoft.com/en-us/windows/dev-drive/
Journaling isn't the issue, small files go into the $MFT which is the fast-path. The issue is the file system filter overhead.