tech-perform archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: fork performance
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 10/18/2012 09:15 AM, David Laight wrote:
> On Thu, Oct 18, 2012 at 12:52:47PM +1300, Lloyd Parkes wrote:
>> So, with a slightly closer look, a guess and some tests to
>> verify my guess, and I think I have found my performance problem
>> converting the NetBSD CVS repositories to Mercurial.
>>
>> The CVS server forks once for each command it receives, and it
>> receives a lot of commands. NetBSD fork(2) seems to be much
>> slower than OS X fork(2).
>
> I've seen things that show that a processes memory page list isn't
> getting its entries merged - so there are a lot of items to
> process during fork(). (cat something in /proc ...)
>
> The malloc netbsd uses (that uses mmap() instead of sbrk())
> probably makes this much more significant. Especially if a big C++
> program - like a python interpreter - is doing the forks().
>
> David
>
Hi,
currently the amap layer limits the size of amaps to 255 * PAGE_SIZE
see: http://nxr.netbsd.org/xref/src/sys/uvm/uvm_amap.c#494
that's why the map entries for anon memory don't get merged.
This will hit fork performance.
Lars
- --
- ------------------------------------
Mystische Erklärungen:
Die mystischen Erklärungen gelten für tief;
die Wahrheit ist, dass sie noch nicht einmal oberflächlich sind.
-- Friedrich Nietzsche
[ Die Fröhliche Wissenschaft Buch 3, 126 ]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://www.enigmail.net/
iEYEARECAAYFAlB/sjgACgkQcxuYqjT7GRYU2QCgg4f8Vdjd7M+rboFRskmJtADc
mi8An1yODChGUoqyBu+qZjpWoinQohgf
=MmIm
-----END PGP SIGNATURE-----
Home |
Main Index |
Thread Index |
Old Index