US-12625542-B2 - Minimizing power consumption for performing a workload
Abstract
Methods and systems for managing a data processing system are disclosed. To manage the data processing system, a workload request may be obtained, and a type of the workload may be identified. Based on the type of the workload, an optimized frequency for a hardware component to perform the workload and a power overhead for configuring the hardware component based on the optimized frequency may be obtained. A first power consumption estimate may be obtained for performing the workload during an available time slot, and configuring the hardware component based on the optimized frequency. A second power consumption estimate may be obtained for performing the workload without configuring the hardware component. A preferred configuration for the available time slot to minimize power consumption may be identified. A data processing system and a time slot for performance of the workload may be selected in which the power consumption estimate is lowest.
Inventors
- Rizwan Ali
- Dharmesh M. Patel
- Ravikanth Chaganti
Assignees
- DELL PRODUCTS L.P.
Dates
- Publication Date
- 20260512
- Application Date
- 20240606
Claims (20)
- 1 . A method for managing operation of data processing systems, the method comprising: obtaining a workload request for a workload; identifying, based on the workload, a type of the workload; obtaining, based on the type of the workload: an optimized frequency for at least one hardware component of the data processing system to perform the workload; and a power overhead consisting of an amount of power for configuring the at least one hardware component from a current configuration to the optimized frequency; obtaining, based on at least the power overhead, a first power consumption estimate for: performing the workload using the at least one hardware component during an available time slot, and configuring the at least one hardware component from the current configuration to the optimized frequency; obtaining a second power consumption estimate for: performing the workload using the at least one hardware component during the available time slot without configuring the at least one hardware component from the current configuration to the optimized frequency; identifying, based on the first power consumption estimate and the second power consumption estimate: a preferred configuration for the at least one hardware component during the available time slot to minimize power consumption for performing the workload, and a power consumption estimate for performing the workload using the at least one hardware component in the preferred configuration during the available time slot; selecting a data processing system of the data processing systems and a time slot for performance of the workload based, at least in part, on the power consumption estimate and a plurality of other power consumption estimates associated with hardware components of other data processing systems of the data processing systems; and in an instance of the selecting in which the power consumption estimate is a lowest power consumption estimate with respect to the plurality of other power consumption estimates: scheduling performance of the workload by the data processing system during the time slot for performance.
- 2 . The method of claim 1 , wherein obtaining the optimized frequency for the at least one hardware component to perform the workload comprises performing a lookup in an optimized frequency repository.
- 3 . The method of claim 1 , further comprising: prior to obtaining the workload request: obtaining test data, the test data usable to perform a test workload by the at least one hardware component; performing, using the test data and by the at least one hardware component, the test workload at a plurality of frequencies; obtaining, based on the test workload at the plurality of frequencies, performance metrics for the test workload at each frequency of the plurality of frequencies; identifying, based on the performance metrics and performance criteria, the optimized frequency for the at least one hardware component; and storing the optimized frequency in an optimized frequency repository.
- 4 . The method of claim 3 , wherein the performance metrics comprise at least one performance metric selected from a group consisting of: a duration of time needed to perform the test workload; an average power consumption over the duration of time; and a total power consumption to perform the test workload.
- 5 . The method of claim 3 , wherein the performance criteria comprise at least one criterion selected from a group consisting of: a maximum duration of time over which the test workload is to be performed; an acceptable range for average power consumption; and a maximum total power consumption needed to perform the test workload.
- 6 . The method of claim 1 , wherein the first power consumption estimate comprises a sum of the power consumption for performing the workload using the at least one hardware component during the available time slot and the power overhead for configuring the at least one hardware component from the current configuration to the optimized frequency.
- 7 . The method of claim 1 , wherein the second power consumption estimate for performing the workload using the at least one hardware component during the available time slot without configuring the at least one hardware component based on the optimized frequency is higher than a portion of the first power consumption estimate for performing the workload using the at least one hardware component during the available time slot with configuring the at least one hardware component based on the optimized frequency when the preferred configuration is a configuration based on the optimized frequency.
- 8 . A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations for managing operation of data processing systems, the operations comprising: obtaining a workload request for a workload; identifying, based on the workload, a type of the workload; obtaining, based on the type of the workload; an optimized frequency for at least one hardware component of the data processing system to perform the workload; and a power overhead consisting of an amount of power for configuring the at least one hardware component from a current configuration to the optimized frequency; obtaining, based on at least the power overhead, a first power consumption estimate for: performing the workload using the at least one hardware component during an available time slot, and configuring the at least one hardware component from the current configuration to the optimized frequency; obtaining a second power consumption estimate for: performing the workload using the at least one hardware component during the available time slot without configuring the at least one hardware component from the current configuration to the optimized frequency; identifying, based on the first power consumption estimate and the second power consumption estimate: a preferred configuration for the at least one hardware component during the available time slot to minimize power consumption for performing the workload, and a power consumption estimate for performing the workload using the at least one hardware component in the preferred configuration during the available time slot; selecting a data processing system of the data processing systems and a time slot for performance of the workload based, at least in part, on the power consumption estimate and a plurality of other power consumption estimates associated with hardware components of other data processing systems of the data processing systems; and in an instance of the selecting in which the power consumption estimate is a lowest power consumption estimate with respect to the plurality of other power consumption estimates: scheduling performance of the workload by the data processing system during the time slot for performance.
- 9 . The non-transitory machine-readable medium of claim 8 , wherein obtaining the optimized frequency for the at least one hardware component to perform the workload comprises performing a lookup in an optimized frequency repository.
- 10 . The non-transitory machine-readable medium of claim 8 , further comprising: prior to obtaining the workload request: obtaining test data, the test data usable to perform a test workload by the at least one hardware component; performing, using the test data and by the at least one hardware component, the test workload at a plurality of frequencies; obtaining, based on the test workload at the plurality of frequencies, performance metrics for the test workload at each frequency of the plurality of frequencies; identifying, based on the performance metrics and performance criteria, the optimized frequency for the at least one hardware component; and storing the optimized frequency in an optimized frequency repository.
- 11 . The non-transitory machine-readable medium of claim 10 , wherein the performance metrics comprise at least one performance metric selected from a group consisting of: a duration of time needed to perform the test workload; an average power consumption over the duration of time; and a total power consumption to perform the test workload.
- 12 . The non-transitory machine-readable medium of claim 10 , wherein the performance criteria comprise at least one criterion selected from a group consisting of: a maximum duration of time over which the test workload is to be performed; an acceptable range for average power consumption; and a maximum total power consumption needed to perform the test workload.
- 13 . The non-transitory machine-readable medium of claim 8 , wherein the first power consumption estimate comprises a sum of the power consumption for performing the workload using the at least one hardware component during the available time slot and the power overhead for configuring the at least one hardware component from the current configuration to the optimized frequency.
- 14 . The non-transitory machine-readable medium of claim 8 , wherein the second power consumption estimate for performing the workload using the at least one hardware component during the available time slot without configuring the at least one hardware component based on the optimized frequency is higher than a portion of the first power consumption estimate for performing the workload using the at least one hardware component during the available time slot with configuring the at least one hardware component based on the optimized frequency when the preferred configuration is a configuration based on the optimized frequency.
- 15 . A power manager, comprising: a processor; and a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform operations for managing operation of data processing systems, the operations comprising: obtaining a workload request for a workload; identifying, based on the workload, a type of the workload; obtaining, based on the type of the workload; an optimized frequency for at least one hardware component of the data processing system to perform the workload; and a power overhead consisting of an amount of power for configuring the at least one hardware component from a current configuration to the optimized frequency; obtaining, based on at least the power overhead, a first power consumption estimate for: performing the workload using the at least one hardware component during an available time slot, and configuring the at least one hardware component from the current configuration to the optimized frequency; obtaining a second power consumption estimate for: performing the workload using the at least one hardware component during the available time slot without configuring the at least one hardware component from the current configuration to the optimized frequency; identifying, based on the first power consumption estimate and the second power consumption estimate: a preferred configuration for the at least one hardware component during the available time slot to minimize power consumption for performing the workload, and a power consumption estimate for performing the workload using the at least one hardware component in the preferred configuration during the available time slot; selecting a data processing system of the data processing systems and a time slot for performance of the workload based, at least in part, on the power consumption estimate and a plurality of other power consumption estimates associated with hardware components of other data processing systems of the data processing systems; and in an instance of the selecting in which the power consumption estimate is a lowest power consumption estimate with respect to the plurality of other power consumption estimates: scheduling performance of the workload by the data processing system during the time slot for performance.
- 16 . The power manager of claim 15 , wherein obtaining the optimized frequency for the at least one hardware component to perform the workload comprises performing a lookup in an optimized frequency repository.
- 17 . The power manager of claim 15 , further comprising: prior to obtaining the workload request: obtaining test data, the test data usable to perform a test workload by the at least one hardware component; performing, using the test data and by the at least one hardware component, the test workload at a plurality of frequencies; obtaining, based on the test workload at the plurality of frequencies, performance metrics for the test workload at each frequency of the plurality of frequencies; identifying, based on the performance metrics and performance criteria, the optimized frequency for the at least one hardware component; and storing the optimized frequency in an optimized frequency repository.
- 18 . The power manager of claim 17 , wherein the performance metrics comprise at least one performance metric selected from a group consisting of: a duration of time needed to perform the test workload; an average power consumption over the duration of time; and a total power consumption to perform the test workload.
- 19 . The power manager of claim 17 , wherein the performance criteria comprise at least one criterion selected from a group consisting of: a maximum duration of time over which the test workload is to be performed; an acceptable range for average power consumption; and a maximum total power consumption needed to perform the test workload.
- 20 . The power manager of claim 15 , wherein the first power consumption estimate comprises a sum of the power consumption for performing the workload using the at least one hardware component during the available time slot and the power overhead for configuring the at least one hardware component from the current configuration to the optimized frequency.
Description
FIELD Embodiments disclosed herein relate generally to managing a data processing system. More particularly, embodiments disclosed herein relate to systems and methods to minimize power consumption by a data processing system for performing a workload. BACKGROUND Computing devices may provide computer-implemented services. The computer-implemented services may be used by users of the computing devices and/or devices operably connected to the computing devices. The computer-implemented services may be performed with hardware components such as processors, memory modules, storage devices, and communication devices. The operation of these components and the components of other devices may impact the performance of the computer-implemented services. BRIEF DESCRIPTION OF THE DRAWINGS Embodiments disclosed herein are illustrated by way of example and not limitation in the figures of the accompanying drawings in which like references indicate similar elements. FIG. 1 shows a block diagram illustrating a system in accordance with an embodiment. FIGS. 2A-2C show diagrams illustrating data flows in accordance with an embodiment. FIG. 3 shows a flow diagram illustrating methods of managing a data processing system in accordance with an embodiment. FIG. 4 shows a block diagram illustrating a data processing system in accordance with an embodiment. DETAILED DESCRIPTION Various embodiments will be described with reference to details discussed below, and the accompanying drawings will illustrate the various embodiments. The following description and drawings are illustrative and are not to be construed as limiting. Numerous specific details are described to provide a thorough understanding of various embodiments. However, in certain instances, well-known or conventional details are not described in order to provide a concise discussion of embodiments disclosed herein. Reference in the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in conjunction with the embodiment can be included in at least one embodiment. The appearances of the phrases “in one embodiment” and “an embodiment” in various places in the specification do not necessarily all refer to the same embodiment. References to an “operable connection” or “operably connected” means that a particular device is able to communicate with one or more other devices. The devices themselves may be directly connected to one another or may be indirectly connected to one another through any number of intermediary devices, such as in a network topology. In general, embodiments disclosed herein relate to methods and systems for managing power consumption by a data processing system. To manage power consumption, the frequency at which a hardware component (e.g., a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU)) operates may be optimized in order to reduce power consumption without negatively impacting computer-implemented services provided by the data processing system. For example, a data processing system may include a CPU configured to operate at a high frequency setting in order to perform workloads in a time efficient manner. However, increased frequency may result in increased power consumption and increased heat production. As a result, operating costs may increase (e.g., due to power costs) and updates to the infrastructure may be necessary (e.g., to upgrade the cooling system). Thus, the computer-implemented services may be more expensive, and may be interrupted and/or delayed (e.g., due to downtime necessary to upgrade the cooling system). To avoid increased operating costs and interruptions and/or delays in providing the computer-implemented services, the power consumption required to perform a workload may be reduced by optimizing the hardware component frequency. To optimize the hardware component frequency, test workloads may be performed at a plurality of frequencies and performance metrics may be obtained (e.g., a duration of time needed to perform the test workload, an average power consumption, a total power consumption). Using performance criteria and the performance metrics for the test workload at each frequency of the plurality of frequencies, an optimized frequency may be obtained and stored in an optimized frequency repository. When a workload request is received for a workload, a type of the workload may be identified and used to perform a lookup in the optimized frequency repository to obtain the optimized frequency based on the type of the workload. A first power consumption estimate may be generated for an available time slot to perform the workload, which may include the amount of power to perform the workload in a configuration based on the optimized frequency, and an amount of power needed to configure the hardware component based on the optimized frequency (e.g., a power overhead). A second power consumption estimate ma