26 #include "code/nmethod.hpp" 27 #include "gc/g1/g1BlockOffsetTable.inline.hpp" 28 #include "gc/g1/g1CollectedHeap.inline.hpp" 29 #include "gc/g1/g1CollectionSet.hpp" 30 #include "gc/g1/g1HeapRegionTraceType.hpp" 31 #include "gc/g1/g1NUMA.hpp" 32 #include "gc/g1/g1OopClosures.inline.hpp" 33 #include "gc/g1/heapRegion.inline.hpp" 34 #include "gc/g1/heapRegionBounds.inline.hpp" 35 #include "gc/g1/heapRegionManager.inline.hpp" 36 #include "gc/g1/heapRegionRemSet.hpp" 37 #include "gc/g1/heapRegionTracer.hpp" 38 #include "gc/shared/genOopClosures.inline.hpp" 39 #include "logging/log.hpp" 40 #include "logging/logStream.hpp" 41 #include "memory/iterator.inline.hpp" 42 #include "memory/resourceArea.hpp" 43 #include "oops/access.inline.hpp" 44 #include "oops/compressedOops.inline.hpp" 45 #include "oops/oop.inline.hpp" 46 #include "runtime/atomic.hpp" 47 #include "runtime/orderAccess.hpp" 48 49 int HeapRegion::LogOfHRGrainBytes = 0; 50 int HeapRegion::LogOfHRGrainWords = 0; 51 int HeapRegion::LogCardsPerRegion = 0; 52 size_t HeapRegion::GrainBytes = 0; 53 size_t HeapRegion::GrainWords = 0; 54 size_t HeapRegion::CardsPerRegion = 0; 55 56 size_t HeapRegion::max_region_size() { 57 return HeapRegionBounds::max_size(); 58 } 59 60 size_t HeapRegion::min_region_size_in_words() { 61 return HeapRegionBounds::min_size() >> LogHeapWordSize; 62 } 63 64 void HeapRegion::setup_heap_region_size(size_t initial_heap_size, size_t max_heap_size) { 65 size_t region_size = G1HeapRegionSize; 66 if (FLAG_IS_DEFAULT(G1HeapRegionSize)) { 67 size_t average_heap_size = (initial_heap_size + max_heap_size) / 2; | 26 #include "code/nmethod.hpp" 27 #include "gc/g1/g1BlockOffsetTable.inline.hpp" 28 #include "gc/g1/g1CollectedHeap.inline.hpp" 29 #include "gc/g1/g1CollectionSet.hpp" 30 #include "gc/g1/g1HeapRegionTraceType.hpp" 31 #include "gc/g1/g1NUMA.hpp" 32 #include "gc/g1/g1OopClosures.inline.hpp" 33 #include "gc/g1/heapRegion.inline.hpp" 34 #include "gc/g1/heapRegionBounds.inline.hpp" 35 #include "gc/g1/heapRegionManager.inline.hpp" 36 #include "gc/g1/heapRegionRemSet.hpp" 37 #include "gc/g1/heapRegionTracer.hpp" 38 #include "gc/shared/genOopClosures.inline.hpp" 39 #include "logging/log.hpp" 40 #include "logging/logStream.hpp" 41 #include "memory/iterator.inline.hpp" 42 #include "memory/resourceArea.hpp" 43 #include "oops/access.inline.hpp" 44 #include "oops/compressedOops.inline.hpp" 45 #include "oops/oop.inline.hpp" 46 47 int HeapRegion::LogOfHRGrainBytes = 0; 48 int HeapRegion::LogOfHRGrainWords = 0; 49 int HeapRegion::LogCardsPerRegion = 0; 50 size_t HeapRegion::GrainBytes = 0; 51 size_t HeapRegion::GrainWords = 0; 52 size_t HeapRegion::CardsPerRegion = 0; 53 54 size_t HeapRegion::max_region_size() { 55 return HeapRegionBounds::max_size(); 56 } 57 58 size_t HeapRegion::min_region_size_in_words() { 59 return HeapRegionBounds::min_size() >> LogHeapWordSize; 60 } 61 62 void HeapRegion::setup_heap_region_size(size_t initial_heap_size, size_t max_heap_size) { 63 size_t region_size = G1HeapRegionSize; 64 if (FLAG_IS_DEFAULT(G1HeapRegionSize)) { 65 size_t average_heap_size = (initial_heap_size + max_heap_size) / 2; |