Fwd: (resend) Request for review (S): 7068625 Testing 8 bytes of card table entries at a time speeds up card-scanning
Bengt Rutisson
bengt.rutisson at oracle.com
Fri Feb 24 12:14:13 UTC 2012
Hi all,
Just pinging this review request. Does anybody have some time to look at
it? It is a fairly small and straight forward change...
Thanks,
Bengt
-------- Original Message --------
Subject: Request for review (S): 7068625 Testing 8 bytes of card table
entries at a time speeds up card-scanning
Date: Tue, 21 Feb 2012 12:03:50 +0400
From: Alexey Ragozin <alexey.ragozin at gmail.com>
To: hotspot-gc-dev at openjdk.java.net
CC: Bengt Rutisson <bengt.rutisson at oracle.com>
Hi,
I would like few volunteers to review changes for
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7068625
WebRev: http://cr.openjdk.java.net/~brutisso/7068625/webrev.00/
<http://cr.openjdk.java.net/%7Ebrutisso/7068625/webrev.00/>
Change summary
For large heaps (I was focusing on 8GiB and above) it is common to have
long continuous ranges of clean cards.
Patch is introducing a short path for skipping ranges of clean cards
using word aligned memory access instead of byte aligned.
Patch affects serial and CMS collectors. For CMS collector stride size
should be increase to see any performance gains (I was using
-XX:+UnlockDiagnosticVMOptions
-XX:ParGCCardsPerStrideChunk=4096)
For testing I was mainly using synthetic benchmark randomly modifying
hash tables in heap, thus uniformly touching cards across heaps.
Average duration of young GC pause were used as KPI.
More details about testing can be found at
http://blog.ragozin.info/2011/07/openjdk-patch-cutting-down-gc-pause.html
Though article is referring jdk6, my resent tests with trunk jdk7 show
no difference.
I was also tested patch with real application (Oracle Coherence storage
node).
With 16GiB of heap and CMS/ParNew GC, enabling patch have shortened GC
pauses roughly in 2 times.
Source code of benchmark used in test are available at
https://gridkit.googlecode.com/svn/branches/aragozin-sandbox/young-gc-bench
Main class YoungGCPauseBenchmark
Regards,
Alexey
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/hotspot-gc-dev/attachments/20120224/1c3b8b70/attachment.htm>
More information about the hotspot-gc-dev
mailing list