equal
deleted
inserted
replaced
1744 if (ZapUnusedHeapArea) { |
1744 if (ZapUnusedHeapArea) { |
1745 // Save information needed to minimize mangling |
1745 // Save information needed to minimize mangling |
1746 heap->record_gen_tops_before_GC(); |
1746 heap->record_gen_tops_before_GC(); |
1747 } |
1747 } |
1748 |
1748 |
1749 heap->pre_full_gc_dump(&_gc_timer); |
|
1750 |
|
1751 // Make sure data structures are sane, make the heap parsable, and do other |
1749 // Make sure data structures are sane, make the heap parsable, and do other |
1752 // miscellaneous bookkeeping. |
1750 // miscellaneous bookkeeping. |
1753 pre_compact(); |
1751 pre_compact(); |
1754 |
1752 |
1755 PreGCValues pre_gc_values(heap); |
1753 PreGCValues pre_gc_values(heap); |
1766 gc_task_manager()->set_active_gang(); |
1764 gc_task_manager()->set_active_gang(); |
1767 gc_task_manager()->task_idle_workers(); |
1765 gc_task_manager()->task_idle_workers(); |
1768 |
1766 |
1769 GCTraceCPUTime tcpu; |
1767 GCTraceCPUTime tcpu; |
1770 GCTraceTime(Info, gc) tm("Pause Full", NULL, gc_cause, true); |
1768 GCTraceTime(Info, gc) tm("Pause Full", NULL, gc_cause, true); |
|
1769 |
|
1770 heap->pre_full_gc_dump(&_gc_timer); |
|
1771 |
1771 TraceCollectorStats tcs(counters()); |
1772 TraceCollectorStats tcs(counters()); |
1772 TraceMemoryManagerStats tms(true /* Full GC */,gc_cause); |
1773 TraceMemoryManagerStats tms(true /* Full GC */,gc_cause); |
1773 |
1774 |
1774 if (TraceOldGenTime) accumulated_time()->start(); |
1775 if (TraceOldGenTime) accumulated_time()->start(); |
1775 |
1776 |
1900 |
1901 |
1901 // Track memory usage and detect low memory |
1902 // Track memory usage and detect low memory |
1902 MemoryService::track_memory_usage(); |
1903 MemoryService::track_memory_usage(); |
1903 heap->update_counters(); |
1904 heap->update_counters(); |
1904 gc_task_manager()->release_idle_workers(); |
1905 gc_task_manager()->release_idle_workers(); |
|
1906 |
|
1907 heap->post_full_gc_dump(&_gc_timer); |
1905 } |
1908 } |
1906 |
1909 |
1907 #ifdef ASSERT |
1910 #ifdef ASSERT |
1908 for (size_t i = 0; i < ParallelGCThreads + 1; ++i) { |
1911 for (size_t i = 0; i < ParallelGCThreads + 1; ++i) { |
1909 ParCompactionManager* const cm = |
1912 ParCompactionManager* const cm = |
1937 |
1940 |
1938 log_debug(gc, task, time)("VM-Thread " JLONG_FORMAT " " JLONG_FORMAT " " JLONG_FORMAT, |
1941 log_debug(gc, task, time)("VM-Thread " JLONG_FORMAT " " JLONG_FORMAT " " JLONG_FORMAT, |
1939 marking_start.ticks(), compaction_start.ticks(), |
1942 marking_start.ticks(), compaction_start.ticks(), |
1940 collection_exit.ticks()); |
1943 collection_exit.ticks()); |
1941 gc_task_manager()->print_task_time_stamps(); |
1944 gc_task_manager()->print_task_time_stamps(); |
1942 |
|
1943 heap->post_full_gc_dump(&_gc_timer); |
|
1944 |
1945 |
1945 #ifdef TRACESPINNING |
1946 #ifdef TRACESPINNING |
1946 ParallelTaskTerminator::print_termination_counts(); |
1947 ParallelTaskTerminator::print_termination_counts(); |
1947 #endif |
1948 #endif |
1948 |
1949 |