2008.11.19 20:56 "Re: [Tiff] Memory leak (TIFFOpen, TIFFReadTile)?", by Andy Cave
FWIW We use our own file I/O with libtiff (like a lot of people - or so I get the impression) and that definitely does not use memory mapped IO; that causes too many issues. For anyone who does anything with image data, who therefore knows what they are doing (certainly more than the OS), reading & caching the data themselves is far more efficient (since they know what there are doing) than letting the OS 'guess'. If you use memory mapped IO you run the risk of running out of address space, the OS can end up paging other data out of memory which is more valuable (especially if you access the data once), etc... If you access the data more than once, you can arrange to cache that which you use more than once, or do other clever stuff, etc... Memory mapping was touted years ago as the solution for memory problems, but personally I've never been convinced.
----- Original Message -----
Maybe a pertinent question is whether anyone is using the default TIFFOpen()? Maybe everyone opens their tiff file with the explicit flag to not memory map. :)
I'm not getting any strong mandate to change the current behavior so I'm inclined to do nothing - my usual preference.
My position is that it should be changed because memory-mapped I/O is a bit unusual and casual TIFF-lib users won't be expecting it or its associated problems with large files. Though, of course, I have found a work-around for my own TIFF-lib usage.
Senior Software Developer | Fax 819-771-8388 | Gatineau, Québec,
email@example.com | http://csbruce.com/ |