RFR(XS): 8232533: G1 uses only a single thread for pretouching the java heap

Stefan Johansson stefan.johansson at oracle.com
Tue Nov 19 09:11:05 UTC 2019

On 2019-11-19 09:35, Thomas Schatzl wrote:
> Hi,
> On 18.11.19 22:31, sangheon.kim at oracle.com wrote:
>> Hi all,
>> Can I have some reviews for this small patch?
>> G1 initiates only 1 GC thread for faster start-up and then initialize 
>> more when we need more GC threads.
>> This is also same when we enable +AlwaysPreTouch option, so 1 thread 
>> touching all heap situation happens as the CR described.
>> The proposed patch is trying to cap the total worker thread count 
>> instead of active worker thread count. And this will make faster 
>> start-up as well.
>    the rationale is that supposedly if a user is specifying 
> AlwaysPreTouch, he wants best performance, and does not care so much 
> about initializing the time it takes to initialize the extra threads. 
> Also initializing the threads first and then doing the work in parallel 
> should be faster than pretouching with only a single thread. :)
> I.e. in the case of the CR, it takes 2mins to pretouch the heap - 
> initializing the threads shouldn't be that slow :P
>> CR: https://bugs.openjdk.java.net/browse/JDK-8232533
>> Webrev: http://cr.openjdk.java.net/~sangheki/8232533/webrev.0/
>> Testing: hs-tier1
> Please fix the copyright date before pushing if you want. I do not need 
> a re-review for this change. Looks good otherwise.
Looks good to me too,
> Thanks,
>    Thomas

More information about the hotspot-gc-dev mailing list