1490 _humongous_set("Master Humongous Set", true /* humongous */, new HumongousRegionSetMtSafeChecker()),
1491 _humongous_reclaim_candidates(),
1492 _has_humongous_reclaim_candidates(false),
1493 _archive_allocator(NULL),
1494 _free_regions_coming(false),
1495 _gc_time_stamp(0),
1496 _summary_bytes_used(0),
1497 _survivor_evac_stats("Young", YoungPLABSize, PLABWeight),
1498 _old_evac_stats("Old", OldPLABSize, PLABWeight),
1499 _expand_heap_after_alloc_failure(true),
1500 _old_marking_cycles_started(0),
1501 _old_marking_cycles_completed(0),
1502 _in_cset_fast_test() {
1503
1504 _workers = new WorkGang("GC Thread", ParallelGCThreads,
1505 /* are_GC_task_threads */true,
1506 /* are_ConcurrentGC_threads */false);
1507 _workers->initialize_workers();
1508 _verifier = new G1HeapVerifier(this);
1509
1510 _allocator = G1Allocator::create_allocator(this);
1511
1512 _heap_sizing_policy = G1HeapSizingPolicy::create(this, _g1_policy->analytics());
1513
1514 _humongous_object_threshold_in_words = humongous_threshold_for(HeapRegion::GrainWords);
1515
1516 // Override the default _filler_array_max_size so that no humongous filler
1517 // objects are created.
1518 _filler_array_max_size = _humongous_object_threshold_in_words;
1519
1520 uint n_queues = ParallelGCThreads;
1521 _task_queues = new RefToScanQueueSet(n_queues);
1522
1523 _evacuation_failed_info_array = NEW_C_HEAP_ARRAY(EvacuationFailedInfo, n_queues, mtGC);
1524
1525 for (uint i = 0; i < n_queues; i++) {
1526 RefToScanQueue* q = new RefToScanQueue();
1527 q->initialize();
1528 _task_queues->register_queue(i, q);
1529 ::new (&_evacuation_failed_info_array[i]) EvacuationFailedInfo();
1530 }
|
1490 _humongous_set("Master Humongous Set", true /* humongous */, new HumongousRegionSetMtSafeChecker()),
1491 _humongous_reclaim_candidates(),
1492 _has_humongous_reclaim_candidates(false),
1493 _archive_allocator(NULL),
1494 _free_regions_coming(false),
1495 _gc_time_stamp(0),
1496 _summary_bytes_used(0),
1497 _survivor_evac_stats("Young", YoungPLABSize, PLABWeight),
1498 _old_evac_stats("Old", OldPLABSize, PLABWeight),
1499 _expand_heap_after_alloc_failure(true),
1500 _old_marking_cycles_started(0),
1501 _old_marking_cycles_completed(0),
1502 _in_cset_fast_test() {
1503
1504 _workers = new WorkGang("GC Thread", ParallelGCThreads,
1505 /* are_GC_task_threads */true,
1506 /* are_ConcurrentGC_threads */false);
1507 _workers->initialize_workers();
1508 _verifier = new G1HeapVerifier(this);
1509
1510 _allocator = new G1DefaultAllocator(this);
1511
1512 _heap_sizing_policy = G1HeapSizingPolicy::create(this, _g1_policy->analytics());
1513
1514 _humongous_object_threshold_in_words = humongous_threshold_for(HeapRegion::GrainWords);
1515
1516 // Override the default _filler_array_max_size so that no humongous filler
1517 // objects are created.
1518 _filler_array_max_size = _humongous_object_threshold_in_words;
1519
1520 uint n_queues = ParallelGCThreads;
1521 _task_queues = new RefToScanQueueSet(n_queues);
1522
1523 _evacuation_failed_info_array = NEW_C_HEAP_ARRAY(EvacuationFailedInfo, n_queues, mtGC);
1524
1525 for (uint i = 0; i < n_queues; i++) {
1526 RefToScanQueue* q = new RefToScanQueue();
1527 q->initialize();
1528 _task_queues->register_queue(i, q);
1529 ::new (&_evacuation_failed_info_array[i]) EvacuationFailedInfo();
1530 }
|