[Zope3-dev] Zope3 memory mystery

Tim Peters tim.peters at gmail.com
Fri Feb 18 15:47:24 EST 2005


I'm running current Zope3 trunk here, Python 2.3.5, WinXP Pro, on a
fast P4 box with a gigabyte of RAM.

Running the unit tests alone:

test.py -u

the process memory high water mark (the largest amount of physical RAM
mapped to the process across the entire time the tests run) is about
140MB.

Running the functional tests alone:

test.py -f

the high water mark is about 90MB.

But running both kinds of tests in one run:

test.py

the high water mark is over 400MB(!).  The unit tests run first then,
and by the time they finish the high water mark is the same ~140MB as
when running only the unit tests.  That's not surprising.  The
surprising part is that the high water mark during the functional
tests keeps growing and growing, until it far exceeds what I'd _guess_
would be the worst-case 140+90 = 230 running them separately suggests.

What do people see on non-Windows boxes?  Different Windows boxes?  On
Windows, the easiest way to track this is in Task Manager.  Take View
-> Select Columns, and check the "Peak Memory Usage" box.  You have to
watch the Task Manager display then, but not until the process is just
about to end <wink>.

FYI, from a ZODB trunk checkout, the --all (test.py --all)
ZODB/ZEO/BTree tests peak at ~35MB.


More information about the Zope3-dev mailing list