< prev index next >

src/share/vm/runtime/virtualspace.cpp

Print this page
rev 7654 : 8066875: VirtualSpace does not use large pages
rev 7655 : 8066875: VirtualSpace does not use large pages (01)
rev 7656 : 8066875: VirtualSpace does not use large pages (02)

*** 36,46 **** 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, false); --- 36,47 ---- ReservedSpace::ReservedSpace() : _base(NULL), _size(0), _noaccess_prefix(0), _alignment(0), _special(false), _executable(false) { } ReservedSpace::ReservedSpace(size_t size) { ! // Want to use large pages where possible and pad with small pages. ! size_t page_size = os::page_size_for_region_unaligned(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, false);
*** 615,625 **** _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. --- 616,626 ---- _executable = false; } bool VirtualSpace::initialize(ReservedSpace rs, size_t committed_size) { ! const size_t max_commit_granularity = os::page_size_for_region_unaligned(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.
*** 1237,1247 **** 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, --- 1238,1248 ---- 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_unaligned(rs.size(), 1)); } } public: static void test_virtual_space_actual_committed_space(size_t reserve_size, size_t commit_size,
< prev index next >