Memory footprint reduction possible ?
Rob Mueller
robm at fastmail.fm
Tue Nov 22 08:34:18 EST 2005
>Understand that the mapped virtual memory represents files that are
>mmap()'d into memory (likely most are part of the database files), but
>the pages are not necessarily loaded into memory until they're read.
>I'd guess the bulk of the memory in your RSS (resident size set; the
>physical memory that's actually used) are the per-mailbox database
>header cache files (and possibly the squat indexes). Do you use
>squatter?
Actually more likely is the mailboxes.db, at least on our systems it is.
$ ps -auxw | grep imapd
...
cyrus 30471 0.0 0.0 155512 2492 ? S 08:13 0:00 imapd
cyrus 30472 0.0 0.0 155892 2628 ? S 08:13 0:00 imapd
...
$ ls -l /var/imap/mailboxes.db
-rw------- 1 cyrus cyrus 131552696 Nov 22 08:20
/var/imap/mailboxes.db
It seems the implementation of the skiplist database requires the entire
database to be mmaped into memory, thus causing the large apparent process
size (155M, of which 131M is the mailboxes.db). It's generally not a
problem, since that 131M is the same memory shared between each process, and
may not even be actual used memory if that data isn't swapped in.
Rob
More information about the Info-cyrus
mailing list