Achieving power savings and low latency for storage

US11720164B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-11720164-B1
Application numberUS-202217725651-A
CountryUS
Kind codeB1
Filing dateApr 21, 2022
Priority dateApr 21, 2022
Publication dateAug 8, 2023
Grant dateAug 8, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A data storage system with multi-core processors dynamically enables and disables processor cores in order to manage power consumption while maintaining performance. One or more active processor cores are disabled responsive to determining that the current workload can be serviced with fewer active processor cores than are currently enabled while maintaining performance. One or more inactive processor cores are enabled responsive to determining that the current workload cannot be serviced with the currently active processor cores while maintaining performance. Separate utilization thresholds may be implemented for enabling inactive processor cores and disabling active processor cores to promote stability.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: in a data storage system comprising at least one compute node with a multi-core processor and non-volatile drives on which production storage objects containing host application data are stored, the production storage objects being accessed by instances of host applications running on host servers using input-output commands (IOs) to read data from the production storage objects and write data to the production storage objects, where IO latency is elapsed time between receipt of an IO by the storage system and return transmission of a write acknowledgment responsive to a write IO and return transmission of host application data responsive to a read IO, determining whether a current IO workload comprised of read IOs and write IOs can be serviced with fewer active processor cores than are currently enabled while maintaining a predetermined IO latency performance characteristic; and disabling at least one of the active processor cores responsive to determining that the current IO workload can be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic. 2. The method of claim 1 further comprising determining whether the current IO workload cannot be serviced with the active processor cores that are currently enabled while maintaining the predetermined IO latency performance characteristic. 3. The method of claim 2 further comprising enabling at least one inactive processor core responsive to determining that the current IO workload cannot be serviced with the active processor cores that are currently enabled while maintaining the predetermined IO latency performance characteristic. 4. The method of claim 3 further comprising determining that the current IO workload can be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic based on utilization being less than a falling utilization threshold. 5. The method of claim 4 further comprising determining that the current IO workload cannot be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic based on utilization being greater than a rising utilization threshold. 6. The method of claim 5 further comprising determining utilization based on one or more of processor utilization by threads, average time to complete an IO, number of IOs currently being processed by all threads, current total IO rate, current IO rate per core, current total IOs in process, current total IOs in process per core, and average time to process IOs from arrival to completion, alone or in any combination. 7. The method of claim 6 further comprising: disabling a plurality of the active processor cores responsive to determining that the current IO workload can be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic; and enabling a plurality of inactive processor cores responsive to determining that the current IO workload cannot be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic. 8. A non-transitory computer-readable storage medium that stores instructions that when executed by a compute node of a data storage system perform a method comprising: determining whether a current IO workload comprised of read input-output commands (IOs) and write IOs can be serviced with fewer active processor cores than are currently enabled while maintaining a predetermined IO latency performance characteristic where the data storage system comprises at least one compute node with a multi-core processor and non-volatile drives on which production storage objects containing host application data are stored, the production storage objects being accessed by instances of host applications running on host servers using IOs to read data from the production storage objects and write data to the production storage objects, where IO latency is elapsed time between receipt of an IO by the storage system and return transmission of a write acknowledgment responsive to a write IO and return transmission of host application data responsive to a read IO; and disabling at least one of the active processor cores responsive to determining that the current IO workload can be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic. 9. The non-transitory computer-readable storage medium of claim 8 in which the method further comprises determining whether the current IO workload cannot be serviced with the active processor cores that are currently enabled while maintaining the predetermined IO latency performance characteristic. 10. The non-transitory computer-readable storage medium of claim 9 in which the method further comprises enabling at least one inactive processor core responsive to determining that the current IO workload cannot be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic. 11. The non-transitory computer-readable storage medium of claim 10 in which the method further comprises determining that the current IO workload can be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic based on utilization being less than a falling utilization threshold. 12. The non-transitory computer-readable storage medium of claim 11 in which the method further comprises determining that the current IO workload cannot be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic based on utilization being greater than a rising utilization threshold. 13. The non-transitory computer-readable storage medium of claim 12 in which the method further comprises determining utilization based on one or more of processor utilization by threads, average time to complete an IO, number of IOs currently being processed by all threads, current total IO rate, current IO rate per core, current total IOs in process, current total IOs in process per core, and average time to process IOs from arrival to completion, alone or in any combination. 14. The non-transitory computer-readable storage medium of claim 13 in which the method further comprises: disabling a plurality of the active processor cores responsive to determining that the current IO workload can be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic; and enabling a plurality of inactive processor cores responsive to determining that the current IO workload cannot be serviced with fewer active processor cores than are currently enabled while maintaining the predetermined IO latency performance characteristic. 15. An apparatus comprising: a plurality of non-volatile drives; at least one compute node with a multi-core processor that runs threads that access the non-volatile drives on which production storage objects containing host application data are stored, the production storage objects being accessed by instances of host applications running on host servers using input-output commands (IOs) to read data from the production storage objects and write data to the production stor

Assignees

Inventors

Classifications

  • G06F1/3287Primary

    by switching off individual functional units in the computer system · CPC title

  • Power saving in microcontroller unit · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11720164B1 cover?
A data storage system with multi-core processors dynamically enables and disables processor cores in order to manage power consumption while maintaining performance. One or more active processor cores are disabled responsive to determining that the current workload can be serviced with fewer active processor cores than are currently enabled while maintaining performance. One or more inactive pr…
Who is the assignee on this patent?
Dell Products Lp
What technology area does this patent fall under?
Primary CPC classification G06F1/3287. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 08 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).