Communication-link-attached persistent memory system
First Claim
1. A persistent memory access system, comprising:
- a primary region corresponding to a predefined portion of a primary network persistent memory unit (nPMU) communicatively coupled to at least one client processor node via a communication system, wherein the primary region is assigned to a client process running on the client processor node and is configured to store information received from the client process; and
a mirror region corresponding to a predefined portion of a mirror nPMU communicatively coupled to the client processor node via the communication system, wherein the mirror region is assigned to the client process and is configured to store the information received from the client process.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method is described that accesses a network persistent memory unit (nPMU). One embodiment comprises a primary region corresponding to a predefined portion of a primary network persistent memory unit (nPMU) communicatively coupled to at least one client processor node via a communication system, wherein the primary region is assigned to a client process running on the client processor node and is configured to store information received from the client process; and a mirror region corresponding to a predefined portion of a mirror nPMU communicatively coupled to the client processor node via the communication system, wherein the mirror region is assigned to the client process and is configured to store the information received from the client process.
107 Citations
46 Claims
-
1. A persistent memory access system, comprising:
-
a primary region corresponding to a predefined portion of a primary network persistent memory unit (nPMU) communicatively coupled to at least one client processor node via a communication system, wherein the primary region is assigned to a client process running on the client processor node and is configured to store information received from the client process; and
a mirror region corresponding to a predefined portion of a mirror nPMU communicatively coupled to the client processor node via the communication system, wherein the mirror region is assigned to the client process and is configured to store the information received from the client process. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A client processor node comprising;
-
a processor;
a network interface communicatively coupled to a primary network persistent memory unit (nPMU), a mirror nPMU and a persistent memory manager (PMM) via a communication system; and
a memory, the memory further comprising;
a process that accesses a primary region corresponding to a predefined portion of the primary nPMU and that accesses a mirror region corresponding to a predefined portion of the mirror nPMU when the process is executed by the processor; and
a persistent memory unit (PMU) library, wherein the PMU library comprises at least a first function configured to permit the process to directly write information to the primary region and the mirror region, and a second function configured to permit the process to directly read the information from a selected one of the primary region or the mirror region. - View Dependent Claims (13, 14)
-
-
15. A method directly accessing persistent memory in a primary network persistent memory unit (nPMU) and a mirror nPMU, the method comprising:
-
allocating a first region in the primary nPMU, the first region corresponding to a portion of memory in the primary nPMU;
allocating a second region in the mirror nPMU, the second region corresponding to a portion of memory in the mirror nPMU;
determining region information corresponding to the first region and the second region; and
storing the determined region information as metadata in a first metadata region in the primary nPMU and in a second metadata region in the mirror nPMU. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29)
-
-
30. A method directly accessing a persistent memory system from a client processor node, the method comprising:
-
executing a client process that accesses the persistent memory system;
executing an application process interface (API), the API retrieving a region handle identifying a first region in a primary network persistent memory unit (nPMU) and identifying a second region in a mirror nPMU, retrieving at least one region function related to a function required by the executing client process, and retrieving at least one parameter associated with the function;
generating an access request comprising the region handle, the region function and the parameter; and
communicating the access request to the persistent memory system. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37)
-
-
38. A system for accessing a persistent memory system, comprising:
-
means for receiving an initial request from a client process for access to the persistent memory system;
means for allocating a first region in a primary network persistent memory unit (nPMU), the first region corresponding to a portion of memory in the primary nPMU;
means for allocating a second region in a mirror nPMU, the second region corresponding to a portion of memory in the mirror nPMU;
means for determining region information corresponding to the first region and the second region; and
means for storing the determined region information in a first metadata region in the primary nPMU and in a second metadata region in the mirror nPMU. - View Dependent Claims (39, 40, 41)
-
-
42. A system for accessing a persistent memory system by a client processor node, comprising:
-
means for executing a client process that accesses the persistent memory system;
means for executing an application process interface (API), the API retrieving a region handle identifying a first region in a primary network persistent memory unit (nPMU) and identifying a second region in a mirror nPMU assigned to the client processor node, retrieving at least one region function related to a function required by the executing client process, and retrieving at least one parameter associated with the function; and
means for communicating an access request to the persistent memory system. - View Dependent Claims (43, 44)
-
-
45. A computer-readable medium having a program for accessing a persistent memory system, the program comprising logic configured to perform:
-
executing a client process that accesses the persistent memory system;
accessing a persistent memory library, the persistent memory library comprising a region handle identifying a first region in a primary network persistent memory unit (nPMU) and identifying a second region in a mirror nPMU, at least one region function related to a function required by an executing process, and at least one parameter associated with the function;
executing an application process interface (API) that generates an access request comprising the API retrieving the region handle, the region function and the parameter; and
communicating the access request to the persistent memory system.
-
-
46. A computer-readable medium having a program for accessing a persistent memory system, the program comprising logic configured to perform:
-
receiving an initial access request from a client process requesting access to the persistent memory system;
allocating a first region in a primary network persistent memory unit (nPMU), the first region corresponding to a portion of memory in the primary nPMU;
allocating a second region in a mirror nPMU, the second region corresponding to a portion of memory in the mirror nPMU;
determining access information corresponding to the first region and the second region; and
storing the determined access information in a first metadata region in the primary nPMU and in a second metadata region in the mirror nPMU.
-
Specification