Network with distributed shared memory
AssigneeDell Products L.P.
InventorsJason P. Gross, Ranjit B. Pandit, Clive G. Cook, Thomas H. Matson
Life of this patent
Estimating the term…
Loading patent…
AssigneeDell Products L.P.
InventorsJason P. Gross, Ranjit B. Pandit, Clive G. Cook, Thomas H. Matson
Estimating the term…
A computer network with distributed shared memory, including a clustered memory cache aggregated from and comprised of physical memory locations on a plurality of physically distinct computing systems. The network also includes a plurality of local cache managers, each of which are associated with a different portion of the clustered memory cache, and a metadata service operatively coupled with the local cache managers. Also, a plurality of clients are operatively coupled with the metadata service and the local cache managers. In response to a request issuing from any of the clients for a data item present in the clustered memory cache, the metadata service is configured to respond with identification of the local cache manager associated with the portion of the clustered memory cache containing such data item.
A computer network with distributed shared random access memory (RAM), comprising:
A method of operating a networked random access memory (RAM) resource, comprising:
A networked computer system with a networked random access memory (RAM) resource, comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Interprocessor communication: using a common memory, e.g. mailbox
Multiuser, multiprocessor or multiprocessing cache systems: with a network or matrix configuration
In which an application is distributed across nodes in the network: for distributed storage of data in networks, e.g. transport arrangements for…
Provisioning of proxy services: storing data temporarily at an intermediate stage, e.g. caching
About 2 years of term left · ends 6 Nov 2028 (estimated)
The present disclosure relates to sharing memory resources in computer networks. A broad class of computing innovation involves the combining of computing resources to provide various benefits. For example, a wide variety of technologies are used to allow distributed storage devices (e.g., hard drives) to be combined and logically accessed as a unified, shared storage resource. Processing resources have also been combined and/or divided, for example, in multiprocessor and parallel processing systems, and in virtual machine environments.
The sharing of computer memory (RAM) has proved more difficult in many respects. Typically, discrete memory chips are combined by tightly coupling the chips together with specialized bus circuits, such as on RAM modules, desktop computer motherboards, and the like. Accordingly, hardware requirements often impose limitations on the ability to share and/or increase memory capacity. Although various solutions have been proposed, the solutions commonly involve significant architectural changes and often require specialized software to take advantage of the changed memory architecture.
FIG. 1 schematically depicts a network with distributed shared memory according to the present description.
FIG. 2 schematically depicts a memory manager that may be employed in the network of FIG. 1 to manage a portion of a clustered memory cache.
FIG. 3 schematically depicts an alternate configuration of local memory managers.
FIG. 1 depicts a computer network 20 with distributed memory. The memory resource and supporting systems may be configured in a variety of different ways and for different applications. Page caching is one example of a setting where numerous advantages can be obtained. Accordingly, the distributed memory resource in the example of FIG. 1, and in other examples discussed herein, includes a clustered memory cache 22. Referring specifically to FIG. 1, clustered memory cache 22 is aggregated from and comprised of physical memory locations 24 on a plurality of physically distinct computing systems 26 (individually designated as Computing System 1, Computing System 2, etc.) Computer network 20 also includes a metadata service 30, a plurality of clients 32 (only one client is shown in the figure), and a plurality of local memory managers 34 (individually designated as MM1, MM2, etc.). Each of the local memory managers is local to and associated with a different portion of clustered memory cache 22. The metadata service, clients and local memory managers are all operatively coupled with each other via network 40. In addition, a configuration manager 42, policy manager 44 and admin interface 46 may also be provided, to provide various functions that will be described below.
Clustered memory cache 22 provides a shared memory resource that can be accessed and used by the clients. Specifically, depending on the mode of operation, clients 32 can read from the clustered memory cache and cause insertion and/or eviction of data items to/from the cache.
As used herein, “client” will at times broadly to refer to any hardware or software entity that makes use of the shared memory resource. For example, clients may include personal computers, workstations, servers and/or applications or other software running on such devices. The invention has proved particular useful in accelerating the performance of server applications that perform operations on large volumes of data, such as complicated modeling and simulation applications in fields such as finance, engineering, etc. In such a setting, the performance of the client application can be enhanced significantly through appropriately managed use of the shared memory resource.