NON-VOLATILE MEMORY EXPRESS (NVMe) DEVICE POWER MANAGEMENT
US-2015331473-A1 · Nov 19, 2015 · US
US9740267B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-9740267-B1 |
| Application number | US-201615338844-A |
| Country | US |
| Kind code | B1 |
| Filing date | Oct 31, 2016 |
| Priority date | Oct 31, 2016 |
| Publication date | Aug 22, 2017 |
| Grant date | Aug 22, 2017 |
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.
An aspect includes viewing contents of a command queue that contains commands waiting to be sent in a specified order to a memory for execution at the memory. Command pattern data that includes patterns of commands and associated estimated power consumptions is accessed. The contents of the command queue are searched for the patterns of commands. One of the patterns of commands is located in the contents of the command queue. A suggested power management action is determined for the memory based on the located pattern of commands and its associated estimated power consumption. The suggested power management action is sent to a power control engine of the memory prior to a first command in the located pattern of commands being sent to the memory for execution.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method comprising: viewing contents of a command queue, the contents including commands waiting to be sent in a specified order to a memory for execution at the memory; accessing command pattern data that includes patterns of commands, each of the patterns of commands including an associated estimated power consumption; tracking a power consumption of commands executing at the memory; updating the command pattern data based on the tracking; searching the contents of the command queue for the patterns of commands; locating one of the patterns of commands in the contents of the command queue; determining a suggested power management action for the memory based on the located pattern of commands and its associated estimated power consumption; and sending the suggested power management action to a power control engine of the memory, the sending prior to a first command in the located pattern of commands being sent to the memory for execution. 2. The method of claim 1 , wherein the suggested power management action is selected from the group consisting of: increase voltage, decrease voltage, and do not adjust voltage. 3. The method of claim 1 , wherein the determining is further based on a current power management state of the memory. 4. The method of claim 1 , wherein the viewing, accessing, searching, locating, determining, and sending are performed by a memory controller in communication with the memory. 5. The method of claim 4 , wherein the method further includes sending a signal to a second memory controller for input into a determining a second suggested power management action for a second memory. 6. The method of claim 1 , wherein the tracking is based on data from sensors. 7. The method of claim 1 , wherein the suggested power management action is encoded on a signal as one or both of a defined voltage level and a digital code. 8. The method of claim 1 , wherein the suggested power management action is passed through to the power control engine via an existing command, address or data signal. 9. A system comprising: a first memory having computer readable instructions; and a processor for executing the computer readable instructions, the computer readable instructions including: viewing contents of a command queue, the contents including commands waiting to be sent in a specified order to a second memory for execution at the second memory; accessing command pattern data that includes patterns of commands, each of the patterns of commands including an associated estimated power consumption; tracking a power consumption of commands executing at the memory; updating the command pattern data based on the tracking; searching the contents of the command queue for the patterns of commands; locating one of the patterns of commands in the contents of the command queue; determining a suggested power management action for the second memory based on the located pattern of commands and its associated estimated power consumption; and sending the suggested power management action to a power control engine of the second memory, the sending prior to a first command in the located pattern of commands being sent to the second memory for execution. 10. The system of claim 9 , wherein the suggested power management action is selected from the group consisting of: increase voltage, decrease voltage, and do not adjust voltage. 11. The system of claim 9 , wherein the determining is further based on a current power management state of the second memory. 12. The system of claim 9 , wherein the viewing, accessing, searching, locating, determining, and sending are performed by a memory controller in communication with the second memory. 13. The system of claim 12 , wherein the instructions further include sending a signal to a second memory controller for input into a determining a second suggested power management action for a third memory. 14. The system of claim 9 , wherein the tracking is based on data from sensors. 15. The system of claim 9 , wherein the suggested power management action is passed through to the power control engine via an existing command, address or data signal. 16. A computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by processing circuitry to cause the processing circuitry to perform: viewing contents of a command queue, the contents including commands waiting to be sent in a specified order to a memory for execution at the memory; accessing command pattern data that includes patterns of commands, each of the patterns of commands including an associated estimated power consumption; tracking a power consumption of commands executing at the memory; updating the command pattern data based on the tracking; searching the contents of the command queue for the patterns of commands; locating one of the patterns of commands in the contents of the command queue; determining a suggested power management action for the memory based on the located pattern of commands and its associated estimated power consumption; and sending the suggested power management action to a power control engine of the memory, the sending prior to a first command in the located pattern of commands being sent to the memory for execution. 17. The computer program product of claim 16 , wherein the suggested power management action is selected from the group consisting of: increase voltage, decrease voltage, and do not adjust voltage. 18. The computer program product of claim 16 , wherein: the memory includes a memory device; and the viewing, accessing, searching, locating, determining, and sending are performed by a memory controller in communication with the memory.
of memory devices · CPC title
Monitoring of events, devices or parameters that trigger a change in power modality · CPC title
Power saving in memory, e.g. RAM, cache · CPC title
by lowering the supply or operating voltage · CPC title
Energy efficient computing, e.g. low power processors, power management or thermal management · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.