Date: Wed, 22 Dec 2004 15:24:21 +0900 From: JINMEI Tatuya / =?ISO-2022-JP?B?GyRCP0BMQEMjOkgbKEI=?= <jinmei@isl.rdc.toshiba.co.jp> To: Scott Long <scottl@freebsd.org> Cc: current@freebsd.org Subject: Re: BIND9 performance issues with SMP Message-ID: <y7v7jnan94a.wl@ocean.jinmei.org> In-Reply-To: <41C8BD1C.9090507@freebsd.org> References: <y7vwtvbmcrf.wl@ocean.jinmei.org> <41C8BD1C.9090507@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> On Tue, 21 Dec 2004 17:17:32 -0700, >>>>> Scott Long <scottl@freebsd.org> said: >> 4. mutex contentions are VERY expensive (looks like much much more >> expensive than other OSes), while trying to get a lock without a >> contention is reasonably cheap. (Almost) whenever a user thread >> blocks due to a lock contention, it is suspended with a system >> call (kse_release), probably causing context switch. (I'm not >> really sure if the system call overhead is the main reason of the >> performance penalty though.) > This might be related to what I said above. Where you observing this > with process scope or system scope threads? Again, if scheduling > decisions are not cheap in the UTS then there really is no point to > SA/KSE. I observed this with system scope threads. Note that "BIND+" I showed in my previous message was modified so that it would specify PTHREAD_SCOPE_SYSTEM. Yet this version ran slower as we increased worker threads. >> 6. at least so far, the ULE scheduler doesn't help improve the >> performance (it even performs worse than the normal 4BSD >> scheduler). > With both types of threads? Yes. Here are some results that were not contained in my previous message: #of process system threads scope scope 1 3014 3090 2 3121 3179 3 2254 1922 4 1869 1405 (the tests were on FreeBSD 5.3 beta 7 w/ ULE + Xeon 700MHz x 4) One remarkable difference is that ULE *relatively* improved the results for process scope threads. However, the BIND server still slowed down with multiple threads. That's why I said "ULE doesn't help improve the performance". > Have you tried Jeff's recent fixes to ULE? I'm not sure. My experience with ULE was limited to the beta7 version of FreeBSD 5.3, and I just gave up using it at that stage, having seen everyone in this list said "ULE is broken, don't use it." If beta7 did not contain the fixes you mentioned, I didn't try them. JINMEI, Tatuya Communication Platform Lab. Corporate R&D Center, Toshiba Corp. jinmei@isl.rdc.toshiba.co.jp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?y7v7jnan94a.wl>
