< prev index next >

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

Print this page




2775     tty->cr();
2776   }
2777 };
2778 
2779 void G1CollectedHeap::print_cset_rsets() {
2780   PrintRSetsClosure cl("Printing CSet RSets");
2781   collection_set_iterate(&cl);
2782 }
2783 
2784 void G1CollectedHeap::print_all_rsets() {
2785   PrintRSetsClosure cl("Printing All RSets");;
2786   heap_region_iterate(&cl);
2787 }
2788 #endif // PRODUCT
2789 
2790 G1HeapSummary G1CollectedHeap::create_g1_heap_summary() {
2791   YoungList* young_list = heap()->young_list();
2792 
2793   size_t eden_used_bytes = young_list->eden_used_bytes();
2794   size_t survivor_used_bytes = young_list->survivor_used_bytes();

2795 
2796   size_t eden_capacity_bytes =
2797     (g1_policy()->young_list_target_length() * HeapRegion::GrainBytes) - survivor_used_bytes;
2798 
2799   VirtualSpaceSummary heap_summary = create_heap_space_summary();
2800   return G1HeapSummary(heap_summary, (Heap_lock->owned_by_self() ? used() : used_unlocked()),
2801                        eden_used_bytes, eden_capacity_bytes, survivor_used_bytes, num_regions());
2802 }
2803 
2804 G1EvacSummary G1CollectedHeap::create_g1_evac_summary(G1EvacStats* stats) {
2805   return G1EvacSummary(stats->allocated(), stats->wasted(), stats->undo_wasted(),
2806                        stats->unused(), stats->used(), stats->region_end_waste(),
2807                        stats->regions_filled(), stats->direct_allocated(),
2808                        stats->failure_used(), stats->failure_waste());
2809 }
2810 
2811 void G1CollectedHeap::trace_heap(GCWhen::Type when, const GCTracer* gc_tracer) {
2812   const G1HeapSummary& heap_summary = create_g1_heap_summary();
2813   gc_tracer->report_gc_heap_summary(when, heap_summary);
2814 
2815   const MetaspaceSummary& metaspace_summary = create_metaspace_summary();
2816   gc_tracer->report_metaspace_summary(when, metaspace_summary);
2817 }
2818 
2819 G1CollectedHeap* G1CollectedHeap::heap() {
2820   CollectedHeap* heap = Universe::heap();
2821   assert(heap != NULL, "Uninitialized access to G1CollectedHeap::heap()");




2775     tty->cr();
2776   }
2777 };
2778 
2779 void G1CollectedHeap::print_cset_rsets() {
2780   PrintRSetsClosure cl("Printing CSet RSets");
2781   collection_set_iterate(&cl);
2782 }
2783 
2784 void G1CollectedHeap::print_all_rsets() {
2785   PrintRSetsClosure cl("Printing All RSets");;
2786   heap_region_iterate(&cl);
2787 }
2788 #endif // PRODUCT
2789 
2790 G1HeapSummary G1CollectedHeap::create_g1_heap_summary() {
2791   YoungList* young_list = heap()->young_list();
2792 
2793   size_t eden_used_bytes = young_list->eden_used_bytes();
2794   size_t survivor_used_bytes = young_list->survivor_used_bytes();
2795   size_t heap_used = Heap_lock->owned_by_self() ? used() : used_unlocked();
2796 
2797   size_t eden_capacity_bytes =
2798     (g1_policy()->young_list_target_length() * HeapRegion::GrainBytes) - survivor_used_bytes;
2799 
2800   VirtualSpaceSummary heap_summary = create_heap_space_summary();
2801   return G1HeapSummary(heap_summary, heap_used, eden_used_bytes,
2802                        eden_capacity_bytes, survivor_used_bytes, num_regions());
2803 }
2804 
2805 G1EvacSummary G1CollectedHeap::create_g1_evac_summary(G1EvacStats* stats) {
2806   return G1EvacSummary(stats->allocated(), stats->wasted(), stats->undo_wasted(),
2807                        stats->unused(), stats->used(), stats->region_end_waste(),
2808                        stats->regions_filled(), stats->direct_allocated(),
2809                        stats->failure_used(), stats->failure_waste());
2810 }
2811 
2812 void G1CollectedHeap::trace_heap(GCWhen::Type when, const GCTracer* gc_tracer) {
2813   const G1HeapSummary& heap_summary = create_g1_heap_summary();
2814   gc_tracer->report_gc_heap_summary(when, heap_summary);
2815 
2816   const MetaspaceSummary& metaspace_summary = create_metaspace_summary();
2817   gc_tracer->report_metaspace_summary(when, metaspace_summary);
2818 }
2819 
2820 G1CollectedHeap* G1CollectedHeap::heap() {
2821   CollectedHeap* heap = Universe::heap();
2822   assert(heap != NULL, "Uninitialized access to G1CollectedHeap::heap()");


< prev index next >