US8392736B2ActiveUtilityPatentIndex 78
Managing memory power usage
Est. expiryJul 31, 2029(~3.1 yrs left)· nominal 20-yr term from priority
Inventors:VADEN THOMAS L
G06F 1/3275G06F 11/3055G06F 1/3287Y02D30/50Y02D10/00G06F 1/3225G06F 11/3037
78
PatentIndex Score
7
Cited by
19
References
21
Claims
Abstract
Methods of method of managing memory power usage in a computing device having two or more memory modules. By monitoring a system working set size of the computing device, a determination can be made if all active memory modules are needed for the system working set size. If not all active memory modules are needed for the system working set size, one or more of the active memory modules can be selected for power down. By evacuating data from the selected one or more memory modules, placing the evacuated one or more memory modules in a power-down state, and removing the powered-down memory modules from the active memory of the computing device, memory power usage can be reduced.
Claims
exact text as granted — not AI-modified1. A method of managing memory power usage in a computing device having two or more memory modules, comprising:
monitoring a system working set size of the computing device;
determining if all active memory modules are needed for the system working set size in response to at least the system working set size, a size of total active physical memory of the active memory modules, and sizes of one or more of the active memory modules;
if not all active memory modules are needed for the system working set size:
selecting one or more of the active memory modules for power-down;
evacuating data from the selected one or more memory modules;
placing the evacuated one or more memory modules in a power-down state; and
removing the powered-down memory modules from the active memory of the computing device.
2. The method of claim 1 , wherein monitoring the system working set size comprises monitoring one or more system counters of an operating system of the computing device.
3. The method of claim 1 , wherein determining if all active memory modules are needed for the system working set size comprises comparing the difference between the size of the total active physical memory of the active memory modules and the system working set size to the size of a smallest active memory module of the computing device.
4. The method of claim 1 , wherein determining if all active memory modules are needed for the system working set size comprises adding a threshold value to the system working set size.
5. The method of claim 4 , wherein adding a threshold value to the system working set size comprises adding a non-zero threshold value to the system working set size.
6. The method of claim 1 , wherein selecting one or more of the active memory modules for power-down comprises selecting a smallest active memory module of the computing device.
7. The method of claim 1 , wherein selecting one or more of the active memory modules for power-down comprises selecting a largest number of active memory modules whose combined size is less than a difference between the size of the total active physical memory of the active memory modules and a sum of the system working set size and a threshold value.
8. The method of claim 1 , wherein evacuating data from the selected one or more memory modules comprises copying data from the selected one or more memory modules to one or more memory modules of the computing device not selected for power-down.
9. The method of claim 1 , wherein placing the evacuated one or more memory modules in a power-down state comprises removing power from the evacuated one or more memory modules.
10. The method of claim 1 , further comprising:
monitoring memory usage of the computing device;
determining if additional active memory modules are desired;
selecting one or more powered-down memory modules of the computing device to restore;
waking the selected one or more powered-down memory modules; and
restoring the awakened one or more memory modules to the active memory of the computing device.
11. The method of claim 10 , wherein monitoring memory usage of the computing device comprises monitoring the system working set size of the computing device.
12. The method of claim 10 , wherein monitoring memory usage of the computing device comprises monitoring a page fault rate of the computing device.
13. The method of claim 10 , wherein monitoring memory usage of the computing device is performed in response to placing the evacuated one or more memory modules in a power-down state.
14. The method of claim 10 , wherein monitoring memory usage of the computing device is performed concurrently with monitoring a system working set size of the computing device regardless of whether any memory modules of the computing device are in a power-down state.
15. The method of claim 1 , wherein monitoring a system working set size of the computing device comprises estimating the system working set size based on memory activity and resource allocation policies of the computing device.
16. A non-transitory computer-usable storage media containing machine-readable instructions adapted to cause a processor to perform a method, the method comprising:
monitoring a system working set size of a computing device containing the processor;
determining if all active memory modules of the computing device are needed for the
system working set size in response to at least the system working set size, a size of total active physical memory of the active memory modules, and sizes of one or more of the active memory modules;
if not all active memory modules of the computing device are needed for the system
working set size:
selecting one or more of the active memory modules for power-down;
evacuating data from the selected one or more memory modules;
placing the evacuated one or more memory modules in a power-down state; and
removing the powered-down memory modules from the active memory of the computing device.
17. The non-transitory computer-usable storage media of claim 16 , wherein the method further comprises:
monitoring memory usage of the computing device;
determining if additional active memory modules are desired;
selecting one or more powered-down memory modules of the computing device to restore;
waking the selected one or more powered-down memory modules; and
restoring the awakened one or more memory modules to the active memory of the computing device.
18. The non-transitory computer-usable storage media of claim 17 , wherein the machine-readable instructions are adapted to cause a processor to perform monitoring the memory usage of the computing device in response to placing the evacuated one or more memory modules in a power-down state.
19. A computing device, comprising:
a processor;
two or more memory modules in communication with the processor; and
computer-usable storage media containing machine-readable instructions adapted to cause the processor to perform a method, the method comprising:
monitoring a system working set size of the computing device;
determining if all active memory modules of the computing device are needed for the system working set size in response to at least the system working set size, a size of total active physical memory of the active memory modules, and sizes of one or more of the active memory modules;
if not all active memory modules of the computing device are needed for the system working set size:
selecting one or more of the active memory modules for power-down;
evacuating data from the selected one or more memory modules;
placing the evacuated one or more memory modules in a power-down state; and
removing the powered-down memory modules from the active memory of the computing device.
20. The computing device of claim 19 , wherein the method further comprises:
monitoring memory usage of the computing device;
determining if additional active memory modules are desired;
selecting one or more powered-down memory modules of the computing device to restore;
waking the selected one or more powered-down memory modules; and
restoring the awakened one or more memory modules to the active memory of the computing device.
21. The computing device of claim 20 , wherein the monitoring the memory usage of the computing device is performed in response to placing the evacuated one or more memory modules in a power-down state.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.