Nonvolatile random access memory use
View Patent ↗For nonvolatile random access memory (NVRAM) use, a query module identifies persistent data on a NVRAM in response to waking the NVRAM. A management module makes available the persistent data for use.
1. An apparatus comprising:
a processor;
a memory that stores code executable by the processor, the code comprising:
a query module that receives a request to load a data element in response to waking a nonvolatile random access memory (NVRAM) and in response to the request identifies persistent data comprising the data element on the NVRAM from a catalog stored on the NVRAM; and
a management module that makes available the persistent data for use without loading the data element in response to validating the persistent data with a validation signature stored in the catalog.
2. The apparatus of claim 1 , wherein the query module further:
detects the NVRAM.
3. The apparatus of claim 2 , wherein the catalog records a data identifier and a storage address of the persistent data.
4. The apparatus of claim 3 , wherein the persistent data is validated using a data pedigree stored in the catalog and the data pedigree comprises the validation signature.
5. The apparatus of claim 1 , wherein the management module further:
receives an allocation request for an allocation of NVRAM storage space;
allocates the NVRAM storage space; and
communicates an allocation acknowledgement comprising an allocated block address for the NVRAM memory.
6. The apparatus of claim 1 , wherein the management module further:
tracks data use of a first data element stored on a dynamic random-access memory (DRAM);
determines the first data element satisfies a NVRAM policy; and
migrates the first data element to the NVRAM in response to a NVRAM policy.
7. A method comprising:
receiving, by use of a processor, a request to load a data element in response to waking a nonvolatile random access memory (NVRAM);
in response to the request, identifying persistent data comprising the data element on the NVRAM from a catalog stored on the NVRAM; and
making available the persistent data for use without loading the data element in response to validating the persistent data with a validation signature stored in the catalog.
8. The method of claim 7 , the method further comprising:
validating the persistent data.
9. The method of claim 8 , wherein the catalog records a data identifier and a storage address of the persistent data.
10. The method of claim 9 , wherein the persistent data is validated using a data pedigree stored in the catalog and the data pedigree comprises the validation signature.
11. The method of claim 7 , the method further comprising:
receiving an allocation request for an allocation of NVRAM storage space;
allocating the NVRAM storage space; and
communicating an allocation acknowledgement comprising an allocated block address for the NVRAM memory.
12. The method of claim 7 , the method further comprising:
tracking data use of a first data element stored on a dynamic random-access memory (DRAM);
determining the first data element satisfies a NVRAM policy; and
migrating the first data element to the NVRAM in response to a NVRAM policy.
13. The method of claim 12 , wherein the NVRAM policy tests one or more of first data element uses per interval, persistence settings, and a last use.
14. The method of claim 7 , wherein one or more of a boot loader, an operating system loader, a process virtual machine, and an application identifies the persistent data and makes the persistent data available.
15. The method of claim 7 , wherein the persistent data is one or more of a software application and application data.
16. A program product comprising a computer readable storage medium storing code executable by a processor to perform:
receiving a request to load a data element in response to waking a nonvolatile random access memory (NVRAM);
in response to the request, identifying persistent data comprising the data element on the NVRAM from a catalog stored on the NVRAM; and
making available the persistent data for use without loading the data element in response to validating the persistent data with a validation signature stored in the catalog.
17. The program product of claim 16 , the code further:
validating the persistent data.
18. The program product of claim 17 , wherein the catalog records a data identifier and a storage address of the persistent data.
19. The program product of claim 18 , wherein the persistent data is validated using a data pedigree stored in the catalog and the data pedigree comprises the validation signature.
20. The program product of claim 17 , the code further:
receiving an allocation request for an allocation of NVRAM storage space;
allocating the NVRAM storage space; and
communicating an allocation acknowledgement comprising an allocated block address for the NVRAM memory.