Intel® Optane™ Persistent Memory
Examine Issues Related to Intel® Optane™ Persistent Memory

About memory mode

fyc
Beginner
814 Views
Hello SteveScargall

Thanks for your reply.
Sorry I can't post my reply with my phone successfully, so I make a new question.
The PMem we purchased has not arrived yet, we need to use simulation methods to do some solution verification in the early stage.
Our purpose is to build a memory pool with PMem.
If PMem is configured in memory mode, the memory seen by the operating system or the third-party tools is
(1) The original DRAM + PMem is used as memory
(2) Only PMem is used as memory
Which form of the above will we see?
Can the original DRAM still be seen?
0 Kudos
1 Solution
SteveScargall
Employee
796 Views

When the system is configured in Memory Mode, the DRAM is used by the memory controller as a cache, so the OS does not have access to it. The total memory capacity seen by the OS will be the capacity of PMem only. For example, if your system uses an 8+8 memory population configuration with a 4:1 ratio of PMem:DRAM, you would have (8x128GB PMem = 1024GB) + (8 x 32GB DDR4 = 256GB). The OS would see 1024GB of memory using commands such as `lsmem`, `free -m`, etc and treat it as volatile memory. It cannot see or directly use the DRAM as this is handled by the memory controller. 

 

Using the same memory population and configuring the platform in AppDirect, the OS would see and have access to both the DRAM and PMem for a total of 1280GB. However, it's now up to the application or system administrator to decide and configure how the memory is accessed as this is not automatic. If the application is not PMem aware, there is a growing set of Memory Tiering solutions available that can assist unmodified applications to consume both DRAM and PMem, including:

 

The above solutions achieve transparent memory, much like Memory Mode, but using software instead. 

View solution in original post

1 Reply
SteveScargall
Employee
797 Views

When the system is configured in Memory Mode, the DRAM is used by the memory controller as a cache, so the OS does not have access to it. The total memory capacity seen by the OS will be the capacity of PMem only. For example, if your system uses an 8+8 memory population configuration with a 4:1 ratio of PMem:DRAM, you would have (8x128GB PMem = 1024GB) + (8 x 32GB DDR4 = 256GB). The OS would see 1024GB of memory using commands such as `lsmem`, `free -m`, etc and treat it as volatile memory. It cannot see or directly use the DRAM as this is handled by the memory controller. 

 

Using the same memory population and configuring the platform in AppDirect, the OS would see and have access to both the DRAM and PMem for a total of 1280GB. However, it's now up to the application or system administrator to decide and configure how the memory is accessed as this is not automatic. If the application is not PMem aware, there is a growing set of Memory Tiering solutions available that can assist unmodified applications to consume both DRAM and PMem, including:

 

The above solutions achieve transparent memory, much like Memory Mode, but using software instead. 

Reply