RFR: 8041506 - The test gc/g1/TestHumongousShrinkHeap.java reports that memory is not de-committed
dmitry.fazunenko at oracle.com
Mon May 26 15:32:43 UTC 2014
Sorry, it took too long from me to review you change.
I have several comments:
- overall fix looks good
- I think you need to change the subject: you fix 8041946, not 8041506
- Replace 'TestHumongousShrinkHeap' with 'TestShrinkDefragmentedHeap'
- Make MemoryUsagePrinter as static inner class of test (to avoid
possible conflicts with other tests)
- It would be good if you provide more text description to the test, like
* allocate small objects mixed with humongous ones
* release all allocated object except the last humongous one
* invoke gc and check that memory returned to the system (amount of
committed memory got down)
- I'm not sure that you can predict the expected amount of committed
memory at the end... I wouldn't use the expectedCommitted in the test
(there are many memory consumers, not only your test, so the final
committed should be either less or greater than expectedCommitted )
- I think you don't need to touch 'test/TEST.groups'. There is
:needs_g1gc tests group (hs/test/closed/TEST.group) which lists all g1
- Please provide information on how you tested your change.
On 15.05.2014 15:29, Andrey Zakharov wrote:
> To proper testing of free list sorting we need to defragment memory
> with small young and humongous objects
> This is test scenario:
> Make enough space for new objects to prevent it going old.
> - allocate bunch of small objects, and a bit of humongous
> several times.
> Free almost all of allocated stuff. Check that heap shrinks after GC.
> webrev: http://cr.openjdk.java.net/~jwilhelm/8041506/webrev.02/
> bug: https://bugs.openjdk.java.net/browse/JDK-8041506
More information about the hotspot-gc-dev