RFR: 8243315: ParallelScavengeHeap::initialize() passes GenAlignment as page size to os::trace_page_sizes instead of actual page size [v2]

Joakim Nordström github.com+779991+jaokim at openjdk.java.net
Thu Nov 19 09:59:11 UTC 2020


On Thu, 19 Nov 2020 08:37:33 GMT, Joakim Nordström <github.com+779991+jaokim at openjdk.org> wrote:

>> ### Description
>> The logging for reserved heap space, printed the `GenAlignment` value instead of page size.
>> Before:
>> <pre>
>> [0.369s][info][gc      ] Using Parallel
>> [0.374s][info][pagesize] Heap:  min=2M max=2M base=0x00000000ffe00000 <b>page_size=512K</b> size=2M
>> </pre>
>> Besides changing to display page size using `os::vm_page_size()`, this fix also adds logging of `SpaceAlignment `,`GenAlignment`, and `HeapAlignment`. 
>> After:
>> <pre>
>> [0.367s][info][pagesize] <b>Alignments:  space_align=512K gen_align=512K heap_align=2M</b>
>> [0.369s][info][gc      ] Using Parallel
>> [0.374s][info][pagesize] Heap:  min=2M max=2M base=0x00000000ffe00000 <b>page_size=4K</b> size=2M
>> </pre>
>> Please advice whether the added logging of alignments is sufficient or irrelevant. There were no signs of either alignment being logged anywhere.
>> ### Testing
>> - Tested manually, and logs are showing with arguments <code>-Xlog:pagesize=info -XX:+UseParallelGC</code>
>> - Tested Tier1, Tier2, Tier3.
>
> Joakim Nordström has updated the pull request incrementally with two additional commits since the last revision:
> 
>  - Added ParallelInitLogger with alignment logging
>  - Added logging method that logs actual reserved page sizes, and not just vm_page_size.

src/hotspot/share/gc/parallel/parallelArguments.cpp line 145:

> 143:                      byte_size_in_exact_unit(GenAlignment), exact_unit_for_byte_size(GenAlignment),
> 144:                      byte_size_in_exact_unit(HeapAlignment), exact_unit_for_byte_size(HeapAlignment)
> 145:                      );

This is moved to the ParallelInitLogger

src/hotspot/share/gc/parallel/parallelInitLogger.hpp line 33:

> 31:  protected:
> 32:   virtual void print_heap();
> 33:   //virtual void print_workers();

I pushed too soon, just ignore these.

-------------

PR: https://git.openjdk.java.net/jdk/pull/1161


More information about the hotspot-gc-dev mailing list