On Wed 14 Feb 2007 at 02:24PM, Dan Price wrote:
write(1, " * 1 0 7 9 5 F E T C".., 2050) = 2050 mmap64(0x00000000, 7356416, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFD800000 munmap(0xFE602000, 1048576) = 0 munmap(0xFE502000, 1048576) = 0 munmap(0xFE402000, 1048576) = 0 munmap(0xFE302000, 1048576) = 0 munmap(0xFE202000, 1048576) = 0 munmap(0xFE102000, 1048576) = 0 munmap(0xFE002000, 1048576) = 0 munmap(0xFE000000, 8192) = 0
I was sad to see no response about this issue. I'm now seeing this on my *own* mailbox which is disturbing. Here is an example:
pread64(9, " p o s a l s\n\0\0\0\013".., 8192, 7241728) = 8192 pread64(9, " < S t e v e n . L u c".., 8192, 7249920) = 8192 pread64(9, "\0\0\01F\0\0\0\0 T o : ".., 8192, 7258112) = 8192 mmap64(0x00000000, 13058048, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, -1, 0) = 0xFE400000 munmap(0xFDF72000, 1048576) = 0 munmap(0xFDE72000, 1048576) = 0 munmap(0xFDD72000, 1048576) = 0 munmap(0xFDC72000, 1048576) = 0 munmap(0xFDB72000, 1048576) = 0 munmap(0xFDA72000, 1048576) = 0 munmap(0xFD972000, 1048576) = 0 munmap(0xFD872000, 1048576) = 0 munmap(0xFD772000, 1048576) = 0 munmap(0xFD672000, 1048576) = 0 munmap(0xFD572000, 1048576) = 0 munmap(0xFD472000, 1048576) = 0 munmap(0xFD402000, 458752) = 0 munmap(0xFD400000, 8192) = 0
So here we see dovecot allocate a whopping 12MB of anonymous memory, then munmap it all away in 1MB chunks.
Timo, do you know why this is happening? It is ruining performance for me.
-dp
-- Daniel Price - Solaris Kernel Engineering - dp@eng.sun.com - blogs.sun.com/dp