On Wednesday, 4 April 2012 at 19:41:21 UTC, Jay Norwood wrote:
 > The work-around was to convert all the file operations to use
std.stream equivalents, and that worked well, but I see i the bug reports that even that was only working correctly on windows. So I'm on windows, and ok for me, but it would be too bad to limit use to Windows.

Seems like stdio runtime support for File operations above 2GB would be a basic expectation for a "system" language these days.


btw, I posted a fix to setTimes that enables it to update the timestamp on directories as well as regular files, along with the source code of this example.


I also did some research on why ntfs is such a dog when doing delete operations on hard drives, as well as spending several hours looking at procmon logs, and have decided that the problem is primarily related to multiple accesses in the master file table file for the larger files. There is much discussion on the matter of the MFT getting fragmented on these larger drives, and a couple of interesting proposed tweaks in the second link.

http://ixbtlabs.com/articles/ntfs/index3.html
http://www.gilsmethod.com/speed-up-vista-with-these-simple-ntfs-tweaks

The second link shows you how to reserve a larger area for MFT, and the link below looks like it might be able to clean out any files from the reserved MFT spaces.

http://www.mydefrag.com/index.html





Reply via email to