< prev index next >

src/share/vm/runtime/virtualspace.cpp

Print this page
rev 7180 : 8067469: G1 ignores AlwaysPreTouch
Summary: Factor out pretouch code of the various virtual space management classes and use them everywhere including in G1.
Reviewed-by: stefank, ehelin, dholmes
rev 7181 : 8049864: TestParallelHeapSizeFlags fails with unexpected heap size
Reviewed-by: sjohanss, jmasa

*** 51,61 **** ReservedSpace::ReservedSpace() : _base(NULL), _size(0), _noaccess_prefix(0), _alignment(0), _special(false), _executable(false) { } ReservedSpace::ReservedSpace(size_t size) { ! size_t page_size = os::page_size_for_region(size, size, 1); bool large_pages = page_size != (size_t)os::vm_page_size(); // Don't force the alignment to be large page aligned, // since that will waste memory. size_t alignment = os::vm_allocation_granularity(); initialize(size, alignment, large_pages, NULL, 0, false); --- 51,61 ---- ReservedSpace::ReservedSpace() : _base(NULL), _size(0), _noaccess_prefix(0), _alignment(0), _special(false), _executable(false) { } ReservedSpace::ReservedSpace(size_t size) { ! size_t page_size = os::page_size_for_region(size, 1); bool large_pages = page_size != (size_t)os::vm_page_size(); // Don't force the alignment to be large page aligned, // since that will waste memory. size_t alignment = os::vm_allocation_granularity(); initialize(size, alignment, large_pages, NULL, 0, false);
*** 370,380 **** _executable = false; } bool VirtualSpace::initialize(ReservedSpace rs, size_t committed_size) { ! const size_t max_commit_granularity = os::page_size_for_region(rs.size(), rs.size(), 1); return initialize_with_granularity(rs, committed_size, max_commit_granularity); } bool VirtualSpace::initialize_with_granularity(ReservedSpace rs, size_t committed_size, size_t max_commit_granularity) { if(!rs.is_reserved()) return false; // allocation failed. --- 370,380 ---- _executable = false; } bool VirtualSpace::initialize(ReservedSpace rs, size_t committed_size) { ! const size_t max_commit_granularity = os::page_size_for_region(rs.size(), 1); return initialize_with_granularity(rs, committed_size, max_commit_granularity); } bool VirtualSpace::initialize_with_granularity(ReservedSpace rs, size_t committed_size, size_t max_commit_granularity) { if(!rs.is_reserved()) return false; // allocation failed.
*** 993,1003 **** case Reserve: return vs.initialize(rs, 0); case Disable: return vs.initialize_with_granularity(rs, 0, os::vm_page_size()); case Commit: ! return vs.initialize_with_granularity(rs, 0, os::page_size_for_region(rs.size(), rs.size(), 1)); } } public: static void test_virtual_space_actual_committed_space(size_t reserve_size, size_t commit_size, --- 993,1003 ---- case Reserve: return vs.initialize(rs, 0); case Disable: return vs.initialize_with_granularity(rs, 0, os::vm_page_size()); case Commit: ! return vs.initialize_with_granularity(rs, 0, os::page_size_for_region(rs.size(), 1)); } } public: static void test_virtual_space_actual_committed_space(size_t reserve_size, size_t commit_size,
< prev index next >