Date: Thu, 10 Jul 2003 09:35:03 +0200 From: "Kai Mosebach" <kai.mosebach@freshx.de> To: "'Mike Makonnen'" <mtm@identd.net>, "'Petri Helenius'" <pete@he.iki.fi> Cc: freebsd-threads@freebsd.org Subject: AW: LinuxThreads replacement Message-ID: <000301c346b5$c8327240$0100a8c0@alpha> In-Reply-To: <20030710001204.GB10504@kokeb.ambesa.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Hi, Hmm, some kind of benchmark would be pretty interesting, thats right. But im not sure, whether its done by simply switching between the lib in the Libmap.conf, because sapdb consists of ~50 executables, which are startet from each other (for example, you have a service listener, which starts a dm-manager, and later on a database-kernel and so on ...), so i guess, that i have to whether 1) link libc_r or some nasty trick like that, or to create to binary versions. cheers -----Urspr=FCngliche Nachricht----- Von: Mike Makonnen [mailto:mtm@identd.net]=20 Gesendet: Donnerstag, 10. Juli 2003 02:12 An: Petri Helenius Cc: Kai Mosebach; freebsd-threads@freebsd.org Betreff: Re: LinuxThreads replacement On Wed, Jul 09, 2003 at 10:11:15PM +0300, Petri Helenius wrote: > >for example, for on database instance, there are about 80 (lthread) > >processes hanging around. >=20 > I would say with 80 threads you?ll get better performance with libkse > since you?ll get less contention on the process scheduler. >=20 It's not as simple as that. In practice a lot of factors about your system and the type of work you're doing will affect the performance. On paper, the SA/KSE method is supposed to combine the best aspects of 1:1 (libthr) and N:1 (libc_r), and should threoretically be "better" than either one. But, in practice, complexity and overhead may drown out the performance gains. Conversely, context switching overhead may not be as great a penalty for the 1:1 model on modern cpus. I don't want to get in a flamewar over this. I just wanted to point out that it's not as simple as "contention on the process scheduler." I think what we need, now that both libthr and libkse are somewhat useable, is some benchmarking comparisons. If you have the time I think we would all be interested to see any performance comparisons you can run with your application. Once you compile the application switching threads libraries is as simple as editing /etc/libmap.conf. Cheers. --=20 Mike Makonnen | GPG-KEY: http://www.identd.net/~mtm/mtm.asc mtm@identd.net | D228 1A6F C64E 120A A1C9 A3AA DAE1 E2AF DBCC 68B9 mtm@FreeBSD.Org| FreeBSD - Unleash the Daemon!
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?000301c346b5$c8327240$0100a8c0>