2009/4/17, Quanah Gibson-Mount quanah@zimbra.com:
--On Friday, April 17, 2009 10:25 PM +0300 sscdvp@gmail.com wrote:
Why do you have so many threads configured? How many cpu's do you have??
I have tried openldap-2.4.16 (latest) BDB 4.7.25 with all patches from Oracle on Dell AMD64 RAM 4Gb, 8 CPUs, OS Solaris 10.
I have an application which generates heavy load in slapd (many ldap_search'es and very very many ldap_add, ldap_modify, ldap_delete). BDB databases are situated on separate disk and BDB logs are on the other disk. But slapd performance (I mean time to answer) still cuts down during large disk IO periods 'cause these disks are used by other applications at the same time. And so I have increased number of threads from the defaults threads=32 up to 64, just to save some time for my application which requires not more then 30 ms for one search to complete. Just to be sure I have tried the default settings for threads and it's behaviour didn't changed - slapd heap memory just continuously grows (I have seen through pmap)... Also I have tried libtcmalloc which is usually recommended and solaris built in' libmtmalloc, but it didn't helped.
Please copy replies to the bug tracker if you expect help.
I will note that every thread consumes a large chunk of memory. I will also note that the default is 16 threads, not 32. I will also note, that as far as read operations are concerned, usually *fewer* threads is faster, not more. You appear to have quite an excessive amount of threads configured.
I have mentioned that using the defaults didn't helped. Probably I was mistaken about the default number of threads - but if keywords "threads" is missing in config it simply means the defaults, right? May be threads should be lower then the defaults (e.g. 6 or 8)?