Pre-backing virtual storage using historical learned data
First Claim
1. A computer-implemented method for pre-backing virtual memory with real memory based on learned data, the method comprising:
- receiving, by a processor, a request to execute a computer program, wherein the computer program is configured to make memory access requests from the real memory;
obtaining, by the processor, a learned data file for the computer program, the learned data file including a history of memory allocation requests and memory access requests by the computer program, wherein the history of memory access requests includes a time between a start of execution of the computer program and each memory access request by the computer program;
receiving, by the processor, a memory allocation request from the computer program;
allocating one or more pages of a virtual memory to the computer program, wherein a size of the one or more pages is based on the learned data file; and
backing at least one of the one or more pages of the virtual memory in the real memory prior to receiving an access request for the at least one of the one or more pages based on the learned data file.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer system includes memory and a processor configured to manage memory allocation. Aspects include receiving a request to execute a computer program and obtaining a learned data file for the computer program, the learned data file including a history of memory allocation requests and memory access requests by the computer program. Aspects also include receiving a memory allocation request from the computer program and allocating one or more pages of a virtual memory to the computer program, wherein a size of the one or more pages is based on the learned data file. Aspects further include backing at least one of the one or more pages of the virtual memory in the real memory prior to receiving an access request for the at least one of the one or more pages based on the learned data file.
-
Citations
17 Claims
-
1. A computer-implemented method for pre-backing virtual memory with real memory based on learned data, the method comprising:
-
receiving, by a processor, a request to execute a computer program, wherein the computer program is configured to make memory access requests from the real memory; obtaining, by the processor, a learned data file for the computer program, the learned data file including a history of memory allocation requests and memory access requests by the computer program, wherein the history of memory access requests includes a time between a start of execution of the computer program and each memory access request by the computer program; receiving, by the processor, a memory allocation request from the computer program; allocating one or more pages of a virtual memory to the computer program, wherein a size of the one or more pages is based on the learned data file; and backing at least one of the one or more pages of the virtual memory in the real memory prior to receiving an access request for the at least one of the one or more pages based on the learned data file. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product for pre-backing virtual memory with real memory based on learned data, the computer program product comprising:
-
a non-transitory computer readable storage medium having computer readable instructions stored thereon that, when executed by a processing unit implements a method, comprising; receiving, by a processor, a request to execute a computer program, wherein the computer program is configured to make memory access requests from the real memory; obtaining, by the processor, a learned data file for the computer program, the learned data file including a history of memory allocation requests and memory access requests by the computer program, wherein the history of memory access requests includes a time between a start of execution of the computer program and each memory access request by the computer program; receiving, by the processor, a memory allocation request from the computer program; allocating one or more pages of a virtual memory to the computer program, wherein a size of the one or more pages is based on the learned data file; and backing at least one of the one or more pages of the virtual memory in the real memory prior to receiving an access request for the at least one of the one or more pages based on the learned data file. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computer system, comprising:
-
a real memory; and a processor configured to; receive a request to execute a computer program, wherein the computer program is configured to make memory access requests from the real memory; obtain a learned data file for the computer program, the learned data file including a history of memory allocation requests and memory access requests by the computer program, wherein the history of memory access requests includes a time between a start of execution of the computer program and each memory access request by the computer program; receive a memory allocation request from the computer program; allocate one or more pages of a virtual memory to the computer program, wherein a size of the one or more pages is based on the learned data file; and back at least one of the one or more pages of the virtual memory in the real memory prior to receiving an access request for the at least one of the one or more pages based on the learned data file. - View Dependent Claims (14, 15, 16, 17)
-
Specification