[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] BSD Buildbots

From: William Uther
Subject: Re: [Monotone-devel] BSD Buildbots
Date: Mon, 4 Feb 2008 11:27:14 +1100

On 03/02/2008, at 9:55 PM, Lapo Luchini wrote:

Zack Weinberg wrote:
I think there might be something else weird with those buildbots.
That test shouldn't use anything like 256MB of memory - in fact,
massif claims it never gets above 10MB (see attached graph).  It does
repeatedly allocate and then free about 10MB of memory, though; the
only thing I can think of is that the malloc() implementation on the
buildbot is stuck in some debugging mode where it never reuses a
memory block, and that it has substantially more overhead than
massif's (fairly dumb) guess.

The graph in the email you gave showed that it was new and delete allocating the most memory, not malloc and free. That might be another place to look
for debugging options.  Are any special command like options used when

Indeed "time -l" confirms that (and AFAIK that reads kernel data about
actual max memory used, it's not an approximation).

% /usr/bin/time -l softlimit -d11000000 sh -c './unit_tester
refiner:various_counts 2>/dev/null'
load: 0.99  cmd: unit_tester 49383 [runnable] 312.86u 3.36s 98% 9704k
     602,70 real       573,98 user         6,34 sys
    10768  maximum resident set size
     4564  average shared memory size
     6080  average unshared data size
      131  average unshared stack size

Some questions...

Firstly, I note that 10768*1024 = 11026432. That means that the maximum resident set size is greater than the softlimit you set, no? Do we know if the unit test succeeded in this test, or did it die in an OOM? Can you try a simple:

/usr/bin/time -l './unit_tester refiner:various_counts 2>/dev/null'

without the softlimit?

Oh, and what does "ulimit -a" return?

Secondly, I note that the number time returns is labelled "maximum resident set size". Is this including swap or not? I found this web page an interesting read:


Will        :-}

reply via email to

[Prev in Thread] Current Thread [Next in Thread]