Optimization of operating system and virtual machine monitor memory management
AssigneeRed Hat Israel, Ltd.
InventorAvi Kivity
Life of this patent
Estimating the term…
Abstract
A method and system for collecting statistics associated with multiple memory nodes to determine if a read-only page is read accessed in aggregate by multiple processing devices of the multiple memory nodes at or above a first threshold value. If so, the read-only page may be replicated to an additional memory node. If a determination is made that the read-only page is read accessed in aggregate by the multiple processing devices below the first threshold value, the read-only page may be de-replicated upon receipt of a write request associated with the read-only page.
Claims20
A method comprising:
- determining, by a processing device, in view of memory statistics collected at a selected frequency from a plurality of memory nodes, a first page accessed in aggregate by a plurality of processing devices of the plurality of memory nodes at or above a first threshold value;
- determining the first page is mapped with read-only protection;
- in response to determining the first page is mapped with read-only protection and accessed in aggregate by the plurality of processing devices of the plurality of memory nodes at or above a first threshold value, replicating, by the processing device, the first page to generate a copy of the first read-only page to be stored at an additional memory node;
- determining, in view of updated memory statistics collected at the selected frequency, the first page is accessed in aggregate by the plurality of processing devices of the plurality of memory nodes below the first threshold value;
- and
- in response to receipt of a write request associated with the first page, de-replicating, by the processing device, the first page to delete the copy of the first page.
A non-transitory computer readable storage medium having instructions that, when executed by a processing device, cause the processing device to perform operations comprising:
- determining in view of memory statistics collected at a selected frequency from a plurality of memory nodes, a first page is read accessed in aggregate by a plurality of processing devices of the plurality of memory nodes at or above a first threshold value;
- determining the first page is mapped with read-only protection;
- in response to determining the first page is mapped with read-only protection and accessed in aggregate by the plurality of processing devices of the plurality of memory nodes at or above a first threshold value, replicating, by the processing device, the first page to generate a copy of the first read-only page to be stored at an additional memory node;
- determining, in view of updated memory statistics collected at the selected frequency, the first read-only page is read accessed in aggregate by the plurality of processing devices of the plurality of memory nodes below the first threshold value;
- and
- in response to receipt of a write request associated with the first page, de-replicating the first page to delete the copy of the first page.
A computing device comprising:
- a memory;
- and a processing device coupled to the memory, the processing device to perform operations comprising:
- determining in view of memory statistics collected at a selected frequency from a plurality of memory nodes, a first page is read accessed in aggregate by a plurality of processing devices of the plurality of memory nodes at or above a first threshold value;
- determining the first page is mapped with read-only protection;
- in response to determining the first page is mapped with read-only protection and accessed in aggregate by the plurality of processing devices of the plurality of memory nodes at or above a first threshold value, replicating, by the processing device, the first page to generate a copy of the first read-only page to be stored at an additional memory node;
- determining, in view of updated memory statistics collected at the selected frequency, the first read-only page is read accessed in aggregate by the plurality of processing devices of the plurality of memory nodes below the first threshold value;
- and
- in response to receipt of a write request associated with the first page, de-replicating the first page to delete the copy of the first page.
Dependencies are inferred from the claim text.