MEMORY MANAGEMENT FOR VIRTUAL MACHINES
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of the disclosure relate to managing a memory of a server hosting a plurality of virtual machines. Aspects include receiving a plurality of data pages from each of the plurality of virtual machines to be stored in the memory, filtering each the plurality of data pages into one of a plurality of pools of data pages including a pool of potentially identical data pages, and evaluating the data pages in the pool of potentially identical data pages to identify one or more duplicate data pages and one or more similar data pages. Aspects further include coalescing data pages identified as duplicate data pages and encoding differences for data pages identified as similar pages.
15 Citations
20 Claims
-
1. (canceled)
-
2. (canceled)
-
3. (canceled)
-
4. (canceled)
-
5. (canceled)
-
6. (canceled)
-
7. (canceled)
-
8. (canceled)
-
9. A computer program product for managing a memory of a server hosting a plurality of virtual machines, the computer program product comprising:
-
a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; receiving a plurality of data pages from each of the plurality of virtual machines to be stored in the memory; filtering each the plurality of data pages into one of a plurality of pools of data pages including a pool of potentially identical data pages; evaluating the data pages in the pool of potentially identical data pages to identify one or more duplicate data pages and one or more similar data pages; coalescing data pages identified as duplicate data pages; and encoding differences for data pages identified as similar pages. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for managing a memory of a server hosting a plurality of virtual machines having a processor configured to perform a method, the method comprising:
-
receiving a plurality of data pages from each of the plurality of virtual machines to be stored in the memory; filtering each the plurality of data pages into one of a plurality of pools of data pages including a pool of potentially identical data pages; evaluating the data pages in the pool of potentially identical data pages to identify one or more duplicate data pages and one or more similar data pages; coalescing data pages identified as duplicate data pages; and encoding differences for data pages identified as similar pages. - View Dependent Claims (18, 19, 20)
-
Specification