Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 3 Aug 2007 08:18:07 +0100 (BST)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Jeff Roberson <jroberson@chesapeake.net>
Cc:        arch@freebsd.org, Alfred Perlstein <alfred@freebsd.org>, Kris Kennaway <kris@obsecurity.org>
Subject:   Re: Fine grain select locking.
Message-ID:  <20070803081520.B18327@fledge.watson.org>
In-Reply-To: <20070802174819.S561@10.0.0.1>
References:  <20070702230728.E552@10.0.0.1> <20070703181242.T552@10.0.0.1> <20070704105525.GU45894@elvis.mu.org> <20070704114005.X552@10.0.0.1> <20070729180722.GB85196@rot26.obsecurity.org> <20070802174819.S561@10.0.0.1>

next in thread | previous in thread | raw e-mail | index | archive | help
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

--0-101292342-1186125487=:18327
Content-Type: TEXT/PLAIN; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: QUOTED-PRINTABLE


On Thu, 2 Aug 2007, Jeff Roberson wrote:

> I hope we can hash out a good plan to resolve this for 8.0.  filedesc and=
=20
> lockmgr are the biggest hitters on mysql writes.  I suspect this is also =
the=20
> case for pgsql and likely other network server type programs.

Actually, I'd scope this claim a bit -- it's certainly going to be an issue=
=20
for MySQL and any *threaded* network server type programs.  As process base=
d=20
parallelism doesn't share the file descriptor table, it shouldn't affect=20
non-threaded workloads such as Apache and pgSQL.  This is one of the=20
interesting contradictions with threads -- developers are taught that they =
are=20
lightweight, and they are in the sense that they cost less to have many of =
and=20
support very easy IPC, but they are also more likely to contend kernel lock=
s=20
as they involve more shared data structures being referenced.  In contrast,=
=20
process-driven parallelism allows a much higher level of independence betwe=
en=20
executing threads of control, allowing IPC to be explicit rather than=20
continuous.  Anything that reduces the overhead of filedesc locking will=20
improve the performance of all apps,=A0but reducing the contention on filed=
esc=20
will only help applications sharing the file descriptor array between many=
=20
threads/processes.

Robert N M Watson
Computer Laboratory
University of Cambridge
--0-101292342-1186125487=:18327--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070803081520.B18327>