< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp

Print this page
rev 59422 : 8245754: Shenandoah: ditch ShenandoahAlwaysPreTouch
Reviewed-by: XXX

*** 153,163 **** size_t max_byte_size = MaxHeapSize; size_t heap_alignment = HeapAlignment; size_t reg_size_bytes = ShenandoahHeapRegion::region_size_bytes(); ! if (ShenandoahAlwaysPreTouch) { // Enabled pre-touch means the entire heap is committed right away. init_byte_size = max_byte_size; } Universe::check_alignment(max_byte_size, reg_size_bytes, "Shenandoah heap"); --- 153,163 ---- size_t max_byte_size = MaxHeapSize; size_t heap_alignment = HeapAlignment; size_t reg_size_bytes = ShenandoahHeapRegion::region_size_bytes(); ! if (AlwaysPreTouch) { // Enabled pre-touch means the entire heap is committed right away. init_byte_size = max_byte_size; } Universe::check_alignment(max_byte_size, reg_size_bytes, "Shenandoah heap");
*** 342,354 **** _marking_context->mark_complete(); _free_set->rebuild(); } ! if (ShenandoahAlwaysPreTouch) { ! assert(!AlwaysPreTouch, "Should have been overridden"); ! // For NUMA, it is important to pre-touch the storage under bitmaps with worker threads, // before initialize() below zeroes it with initializing thread. For any given region, // we touch the region and the corresponding bitmaps from the same thread. ShenandoahPushWorkerScope scope(workers(), _max_workers, false); --- 342,352 ---- _marking_context->mark_complete(); _free_set->rebuild(); } ! if (AlwaysPreTouch) { // For NUMA, it is important to pre-touch the storage under bitmaps with worker threads, // before initialize() below zeroes it with initializing thread. For any given region, // we touch the region and the corresponding bitmaps from the same thread. ShenandoahPushWorkerScope scope(workers(), _max_workers, false);
< prev index next >