< prev index next >

src/hotspot/share/gc/g1/g1CollectedHeap.cpp

Print this page




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   }


< prev index next >