Linux's exFAT Driver Will Soon Be Able To Delete Big Files Much Faster
For those making use of Linux's modern exFAT file-system, a significant optimization is on the way for when deleting files with the "dirsync" mount option set.
The exFAT file-system driver for Linux 5.12 should be able to delete (large) files much faster when running with the "dirsync" mount option set where the directory updates are done synchronously.
In exFAT's dirsync mode it was found with a SD card to delete a 4GB file taking about 39 seconds on current versions of the Linux kernel... But with the patch queued into the exFAT driver development tree, on the same storage it now takes just one second to delete. The improvement will scale with increasing file size.
The huge reduction in file deletion time is achieved with less than 40 lines of new code where the cluster allocation bitmap is only updated when the bitmap buffer index is changed. This improves the exFAT performance especially with truncat operations, as noted by the patch queued into the exFAT "dev" code.
So for those using exFAT on Linux with "dirsync" behavior active, look for much faster deletion times that should begin with the Linux 5.12 kernel.
The exFAT file-system driver for Linux 5.12 should be able to delete (large) files much faster when running with the "dirsync" mount option set where the directory updates are done synchronously.
In exFAT's dirsync mode it was found with a SD card to delete a 4GB file taking about 39 seconds on current versions of the Linux kernel... But with the patch queued into the exFAT driver development tree, on the same storage it now takes just one second to delete. The improvement will scale with increasing file size.
The huge reduction in file deletion time is achieved with less than 40 lines of new code where the cluster allocation bitmap is only updated when the bitmap buffer index is changed. This improves the exFAT performance especially with truncat operations, as noted by the patch queued into the exFAT "dev" code.
So for those using exFAT on Linux with "dirsync" behavior active, look for much faster deletion times that should begin with the Linux 5.12 kernel.
13 Comments