DarkSnoopy
It would decrease fragmentation considerably if the space for each file was allocated before the file is written rather than as the file is being written. After two hours of downloading packages of source code from various servers onto an empty partition that has only been used for those files, I had nearly 9000 fragments in the 4000 files.