×

Methods and systems for implementing transcendent page caching

  • US 8,769,205 B2
  • Filed: 01/20/2009
  • Issued: 07/01/2014
  • Est. Priority Date: 01/20/2009
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method of implementing transcendent page caching, the method comprising:

  • establishing a plurality of virtual machines on a physical machine, wherein each of the plurality of virtual machines includes a private cache, and wherein a portion of each of the private caches is used to create a shared cache maintained by a hypervisor;

    storing memory pages in the plurality of virtual machines'"'"' private caches;

    determining that at least one of the stored memory pages has been designated to be removed from one of the plurality of virtual machines'"'"' private caches;

    delaying the removal of the at least one of the stored memory pages;

    making a request to the hypervisor to allow the stored memory pages designated for removal from the plurality of virtual machines'"'"' private caches and stored in the shared cache, wherein the hypervisor is configured to have access to the shared cache and each of the plurality of virtual machines'"'"' private caches, and wherein the hypervisor is further configured to manage memory and resource allocations for each of the plurality of virtual machines;

    analyzing a plurality of factors to determine if the at least one of the stored memory pages in the shared cache should be removed or stored, wherein the plurality of factors includes a usage of the at least one of the stored memory pages, total memory space available in the shared cache, and load balancing between the plurality of virtual machine'"'"'s use of the shared cache;

    based on the analysis of the plurality of factors by the hypervisor, storing the at least one of the stored memory pages in the shared cache;

    removing the at least one of the stored memory pages from one of the plurality of virtual machines'"'"' private caches;

    requesting, by one of the plurality of virtual machines, the at least one of the stored memory pages from the shared cache;

    determining that the at least one of the stored memory pages is stored in the shared cache; and

    transferring the at least one of the stored shared memory pages to the one of the plurality of virtual machines.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×