Heap allocation on alternative memory devices

When JVM exhausts its heap memory, your application crashes with OutOfMemoryException. Imagine if you could configure your JVM to use an alternate memory device, like a non-volatile dual in-line memory module (NV-DIMM). 

With the ever-increasing memory demands of applications that deal with large amounts of data, and with the availability of low-cost NV-DIMM memory, the ability to use alternate memory devices for heap allocations is bliss. It also leads to systems that work with heterogeneous memory architectures.

This enhancement targets alternative memory devices that have the same semantics as Dynamic Random Access Memory (DRAM), so that they can be used instead of DRAM, without requiring any changes to the existing application code. All of the other memory structures, such as the stack, code heap, and so on, will continue to use DRAM.

A quick detail before we move forward—NV-DIMM has higher access latency compared to DRAM. But NV-DIMM has a larger capacity at a lower cost compared to DRAM. So, the low-priority processes can use NV-DIMM, whereas the high-priority processes can use DRAM memory.

Heap allocation is a JVM implementation detail that can't be used directly by developers.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.145.166.149