< prev index next >

share/memory/virtualspace.hpp

Print this page
rev 1 : G1GC+POGC+NVDIMM Patch with latest comments incorporated from all.

*** 31,45 **** --- 31,50 ---- class ReservedSpace { friend class VMStructs; protected: char* _base; + char* _nvdimm_base; + char* _nvdimm_base_nv; size_t _size; + size_t _dram_size; + size_t _nvdimm_size; size_t _noaccess_prefix; size_t _alignment; bool _special; int _fd_for_heap; + int _fd_for_nvdimm; private: bool _executable; // ReservedSpace ReservedSpace(char* base, size_t size, size_t alignment, bool special,
*** 61,71 **** --- 66,80 ---- char* requested_address = NULL); ReservedSpace(size_t size, size_t alignment, bool large, bool executable); // Accessors char* base() const { return _base; } + char* nvdimm_base() const { return _nvdimm_base; } + int nvdimm_fd() const { return _fd_for_nvdimm; } + void setup_fd(int fd) {_fd_for_nvdimm = fd; } size_t size() const { return _size; } + size_t nvdimm_size() const { return _nvdimm_size; } char* end() const { return _base + _size; } size_t alignment() const { return _alignment; } bool special() const { return _special; } bool executable() const { return _executable; } size_t noaccess_prefix() const { return _noaccess_prefix; }
*** 112,121 **** --- 121,131 ---- size_t attach_point_alignment, char *aligned_HBMA, char *upper_bound, size_t size, size_t alignment, bool large); void initialize_compressed_heap(const size_t size, size_t alignment, bool large); // Create protection page at the beginning of the space. void establish_noaccess_prefix(); + void initialize_g1gc_nvdimm_dram_sizes(size_t size, size_t alignment); public: // Constructor. Tries to find a heap that is good for compressed oops. // heap_allocation_directory is the path to the backing memory for Java heap. When set, Java heap will be allocated // on the device which is managed by the file system where the directory resides. ReservedHeapSpace(size_t size, size_t forced_base_alignment, bool large, const char* heap_allocation_directory = NULL);
< prev index next >