Date: Sat, 3 Nov 2012 20:41:43 +0200 From: Konstantin Belousov <kostikbel@gmail.com> To: Ian Lepore <freebsd@damnhippie.dyndns.org> Cc: freebsd-hackers@freebsd.org, freebsd-embedded@freebsd.org Subject: Re: watchdogd, jemalloc, and mlockall Message-ID: <20121103184143.GC73505@kib.kiev.ua> In-Reply-To: <1351967919.1120.102.camel@revolution.hippie.lan> References: <1351967919.1120.102.camel@revolution.hippie.lan>
next in thread | previous in thread | raw e-mail | index | archive | help
--I0oWFe1KborvVxk0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Nov 03, 2012 at 12:38:39PM -0600, Ian Lepore wrote: > In an attempt to un-hijack the thread about memory usage increase > between 6.4 and 9.x, I'm starting a new thread here related to my recent > discovery that watchdogd uses a lot more memory since it began using > mlockall(2). >=20 > I tried statically linking watchdogd and it made a small difference in > RSS, presumably because it doesn't wire down all of libc and libm. >=20 > VSZ RSS > 10236 10164 Dynamic > 8624 8636 Static >=20 > Those numbers are from ps -u on an arm platform. I just updated the PR > (bin/173332) with some procstat -v output comparing with/without > mlockall(). >=20 > It appears that the bulk of the new RSS bloat comes from jemalloc > allocating vmspace in 8MB chunks. With mlockall(MCL_FUTURE) in effect > that leads to wiring 8MB to satisfy what probably amounts to a few > hundred bytes of malloc'd memory. >=20 > It would probably also be a good idea to remove the floating point from > watchdogd to avoid wiring all of libm. The floating point is used just > to turn the timeout-in-seconds into a power-of-two-nanoseconds value. > There's probably a reasonably efficient way to do that without calling > log(), considering that it only happens once at program startup. No, I propose to add a switch to turn on/off the mlockall() call. I have no opinion on the default value of the suggested switch. --I0oWFe1KborvVxk0 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlCVZWcACgkQC3+MBN1Mb4hHhACguk/G8KdOYC2wQMMu6BH1WI8c BlkAnRwhcgc8SnQ62sV90VvzzrvX+cLf =s6o/ -----END PGP SIGNATURE----- --I0oWFe1KborvVxk0--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20121103184143.GC73505>