System and method for providing a dynamic cloud with subnet administration (sa) query caching
US-2016127495-A1 · May 5, 2016 · US
US2016197986A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016197986-A1 |
| Application number | US-201514591140-A |
| Country | US |
| Kind code | A1 |
| Filing date | Jan 7, 2015 |
| Priority date | Jan 7, 2015 |
| Publication date | Jul 7, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments relate to host-side cache migration. An aspect is a method that includes determining pre-fetch hints associated with a source cache that is local to a source host machine. The source cache includes pages of cache data for a virtual machine. The pre-fetch hints are sent to a pre-fetch planner to create a pre-fetch plan. The pre-fetch hints are sent based on migration of the virtual machine to a target host machine including a target cache that is local. At the source host machine, a cache migration request is received based on the pre-fetch plan. A first subset of the pages is sent from the source cache through a host-to-host communication channel to the target cache based on the cache migration request. A second subset of the pages is sent from the source cache through a host-storage communication channel to a shared storage to be relayed to the target cache.
Opening claim text (preview).
What is claimed is: 1 . A method comprising: determining a plurality of pre-fetch hints associated with a source cache that is local to a source host machine, the source cache comprising a plurality of pages of cache data for a virtual machine on the source host machine; sending the pre-fetch hints to a pre-fetch planner to create a pre-fetch plan, the sending based on a migration of the virtual machine from the source host machine to a target host machine comprising a target cache that is local to the target host machine; receiving, at the source host machine, a cache migration request based on the pre-fetch plan; sending a first subset of the pages from the source cache through a host-to-host communication channel to the target cache of the target host machine based on the cache migration request; and sending a second subset of the pages from the source cache through a host-storage communication channel to a shared storage to be relayed to the target cache of the target host machine. 2 . The method of claim 1 , wherein the pre-fetch hints include a priority order to indicate a suggested pre-fetching order. 3 . The method of claim 1 , wherein the source cache is not directly accessible by the target host machine. 4 . The method of claim 1 , further comprising: identifying dirty blocks in the source cache as one or more data blocks with a more recent version in the source cache than on the shared storage; and writing the dirty blocks back to the shared storage prior to sending the pre-fetch hints. 5 . The method of claim 1 , wherein the first subset of the pages comprises a lesser amount of sequential data blocks and a greater amount of random data blocks, and the second subset of the pages comprises a greater amount of sequential data blocks and a lesser amount of random data blocks. 6 . The method of claim 5 , further comprising: based on determining that the cache migration request is for the second subset of the pages which comprises at least two random data blocks, writing the at least two random data blocks sequentially to a sequential log on the shared storage such that the at least two random data blocks can be sequentially pre-fetched from the sequential log by the target host machine. 7 . A method comprising: accessing a pre-fetch plan that is based on a plurality of pre-fetch hints associated with a source cache and a predetermined virtual machine migration time budget to migrate a virtual machine from a source host machine to a target host machine, the source cache comprising a plurality of pages of cache data for the virtual machine on the source host machine; identifying a first subset and a second subset of the pages to transfer from the source cache to a target cache based on the pre-fetch plan, the source cache local to the source host machine and the target cache local to the target host machine; and sending a cache migration request to the source host machine based on the pre-fetch plan, wherein the first subset of the pages is pre-fetched from the source cache through a host-to-host communication channel based on the pre-fetch plan, and the second subset of the pages is pre-fetched from a shared storage through a host-storage communication channel as relayed from the source cache in response to the cache migration request. 8 . The method of claim 7 , wherein the pre-fetch hints include a priority order to indicate a suggested pre-fetching order. 9 . The method of claim 7 , wherein the source cache is not directly accessible by the target host machine. 10 . The method of claim 7 , wherein the pre-fetch plan includes one or more fetches from the source cache of one or more data blocks with a more recent version in the source cache than on the shared storage. 11 . The method of claim 7 , wherein the first subset of the pages comprises a lesser amount of sequential data blocks and a greater amount of random data blocks, and the second subset of the pages comprises a greater amount of sequential data blocks and a lesser amount of random data blocks. 12 . The method of claim 11 , further comprising: pre-fetching at least two random data blocks of the second subset of the pages from a sequential log on the shared storage as sequential data as written to the sequential log by the source host machine. 13 . The method of claim 7 , further comprising: determining a utility level of data blocks identified in the pre-fetch hints; and establishing assignments in the pre-fetch plan for the first subset and the second subset of the pages associated with the data blocks based on the utility level. 14 . The method of claim 7 , further comprising: determining a first data transfer bandwidth from the source cache through the host-to-host communication channel to the target cache; determining a second data transfer bandwidth from the source cache and the shared storage through the host-storage communication channel to the target cache; and assigning the first subset and the second subset of the pages in the pre-fetch plan based on a combination of the first data transfer bandwidth, the second data transfer bandwidth, one or more data size constraints, and the predetermined virtual machine migration time budget. 15 . A system comprising: a source host processor in communication with a shared storage, the shared storage accessible by the source host processor and a target host processor; a source cache in communication with and local to the source host processor, the source cache comprising a plurality of pages of cache data for a virtual machine on the source host processor; and a memory having computer-readable instructions executable by the source host processor, the computer-readable instructions comprising: determining a plurality of pre-fetch hints associated with the source cache; sending the pre-fetch hints to a pre-fetch planner to create a pre-fetch plan, the sending based on a migration of the virtual machine from the source host processor to the target host processor; receiving a cache migration request based on the pre-fetch plan; sending a first subset of the pages from the source cache through a host-to-host communication channel to a target cache in communication with the target host processor based on the cache migration request; and sending a second subset of the pages from the source cache through a host-storage communication channel to the shared storage to be relayed to the target cache. 16 . The system of claim 15 , wherein the pre-fetch hints include a priority order to indicate a suggested pre-fetching order. 17 . The system of claim 15 , wherein the source cache is not directly accessible by the target host processor. 18 . The system of claim 15 , wherein the first subset of the pages comprises a plurality of random data blocks, and the second subset of the pages comprises a plurality of sequential data blocks. 19 . The system of claim 18 , wherein the first subset of the pages comprises a lesser amount of the sequential data blocks and a greater amount of the random data blocks, and the second subset of the pages comprises a greater amount of the sequential data blocks and a lesser amount of the random data blocks. 20 . The system of claim 19 , wherein the computer-readable instructions further comprise: based on determining that the cache migration request is for the second subset of the pages which comprises at least two random data blocks, writing the at least two random data blocks sequentially to a sequential log on the
Distribution of virtual machine instances; Migration and load balancing · CPC title
Hypervisor-specific management and integration aspects · CPC title
Peer-to-peer [P2P] networks · CPC title
Migration or transfer of sessions · CPC title
Memory management, e.g. access or allocation · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.