8310388: Shenandoah: Auxiliary bitmap is not madvised for THP

Reviewed-by: shade, kdnilsen
This commit is contained in:
Thomas Stuefe 2023-08-04 18:40:16 +00:00
parent f66cd5008d
commit 017e0c7850

View File

@ -281,9 +281,18 @@ jint ShenandoahHeap::initialize() {
}
// Reserve aux bitmap for use in object_iterate(). We don't commit it here.
ReservedSpace aux_bitmap(_bitmap_size, bitmap_page_size);
size_t aux_bitmap_page_size = bitmap_page_size;
#ifdef LINUX
// In THP "advise" mode, we refrain from advising the system to use large pages
// since we know these commits will be short lived, and there is no reason to trash
// the THP area with this bitmap.
if (UseTransparentHugePages) {
aux_bitmap_page_size = os::vm_page_size();
}
#endif
ReservedSpace aux_bitmap(_bitmap_size, aux_bitmap_page_size);
os::trace_page_sizes_for_requested_size("Aux Bitmap",
bitmap_size_orig, bitmap_page_size,
bitmap_size_orig, aux_bitmap_page_size,
aux_bitmap.base(),
aux_bitmap.size(), aux_bitmap.page_size());
MemTracker::record_virtual_memory_type(aux_bitmap.base(), mtGC);