memory-mapped files
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Tue Feb 17 20:22:17 PST 2009
Brad Roberts wrote:
> bearophile wrote:
> >> What the heck is going on? When does memory mapping actually help?<
>> You are scanning the file linearly, and the memory window you use is
>> probably very small. In such situation a memory mapping is probably
>> not the best thing. A memory mapping is useful when you for example
>> operate with random access on a wider sliding window on the file.
>
> You can drop the 'sliding' part. mmap tends to help when doing random
> access (or sequential but non-contiguous maybe) over a file. Pure
> streaming is handled pretty well by both patterns. One nicity with mmap
> is that you can hint to the os how you'll be using it via madvise. You
> can't do that with [f]read.
This all would make perfect sense if the performance was about the same
in the two cases. But in fact memory mapping introduced a large
*pessimization*. Why? I am supposedly copying less data and doing less
work. This is very odd.
Andrei
More information about the Digitalmars-d
mailing list