Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
POWER MODE TRANSITION
Document Type and Number:
WIPO Patent Application WO/2021/221611
Kind Code:
A1
Abstract:
In various examples, a computing device may include first and second power supplies, a processor, and memory storing computer-readable instructions that cause the processor to: in response to a determination that a workload corresponding to the computing device satisfies a first criterion, transition the computing device from a redundant power mode to an aggregate power mode, wherein: in the redundant power mode, the first and second power supplies supply a first combined amount of power to the computing device, and in the aggregate power mode, the first and second power supplies supply a second combined amount of power to the computing device, wherein the second combined amount of power is greater than the first combined amount of power; and in response to a determination that the workload satisfies a second criterion, transition the computing device from the aggregate power mode to the redundant power mode.

Inventors:
LEAMING JEFFREY EDWARD (US)
MATHIS STACIE FOWLER (US)
MILLER MICHAEL ALLAN (US)
Application Number:
PCT/US2020/030219
Publication Date:
November 04, 2021
Filing Date:
April 28, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HEWLETT PACKARD DEVELOPMENT CO (US)
International Classes:
G06F1/30; G06F1/28; G06F21/81
Foreign References:
US9766678B22017-09-19
US5751950A1998-05-12
US5230055A1993-07-20
US9893632B22018-02-13
Attorney, Agent or Firm:
GORDON, Erica et al. (US)
Download PDF:
Claims:
CLAIMS

1. A computing device comprising: a first power supply; a second power supply; a processor; and memory storing computer-readable instructions that cause the processor to: in response to a determination that a workload corresponding to the computing device satisfies a first criterion, transition the computing device from a redundant power mode to an aggregate power mode, wherein: in the redundant power mode, the first and second power supplies supply a first combined amount of power to the computing device, and in the aggregate power mode, the first and second power supplies supply a second combined amount of power to the computing device, wherein the second combined amount of power is greater than the first combined amount of power; and in response to a determination that the workload satisfies a second criterion, transition the computing device from the aggregate power mode to the redundant power mode.

2. The computing device of claim 1 , further comprising a firmware interface between an operating system of the computing device and hardware of the computing device to transition the computing device between the redundant power mode and aggregate power mode.

3. The computing device of claim 2, wherein the firmware interface transitions the computing device between the redundant and aggregate power modes without restarting the computing device.

4. The computing device of claim 1 , wherein the workload is a predicted workload that is predicted based on computational complexity of other computer-readable instructions to be executed by the processor.

5. The computing device of claim 1 , wherein the processor is to provide output comprising a solicitation for permission to transition from the redundant power mode into the aggregate power mode, and wherein the processor transitions the computing device from the redundant power mode to the aggregate power mode based on user input received in response to the solicitation.

6. The computing device of claim 1 , wherein: the first combined amount of power is less than both a first maximum power threshold associated with the first power supply and a second maximum power threshold associated with the second power supply; and the second combined amount of power is greater than either the first or second maximum power threshold alone.

7. The computing device of claim 1 , wherein the second power supply serves as a backup for the first power supply.

8. A method implemented by a computing device, the method comprising: predicting a workload corresponding to a task to be performed by the computing device using a resource of the computing device; comparing the predicted workload to a threshold associated with a first or second power supply of the computing device; and based on the comparing, transitioning the computing device from a redundant power mode, in which the computing device draws a first total amount of current from one or both of the first and second power supplies, to an aggregate power mode, in which the computing device draws a second total amount of current from both the first power supply and the second power supply, wherein the second total amount of current is greater than the first total amount of current.

9. The method of claim 8, wherein the resource comprises a graphic processing unit (“GPU”) of the computing device.

10. The method of claim 9, wherein the comparing comprises comparing the predicted workload of the GPU and another predicted workload of a central processor of the computing device to the threshold.

11. The method of claim 8, wherein the threshold comprises a current limit of the first or second power supply.

12. The method of claim 8, comprising transitioning the computing device from the aggregate power mode to the redundant power mode based on the comparing.

13. The method of claim 8, comprising determining a measure of indispensabiiity of another task already being performed by a computing device, wherein the transitioning is further based on the measure of indispensabiiity.

14. A non-transitory computer-readable medium comprising instructions that, in response to execution of the instructions by a processor, cause the processor to: compare a workload corresponding to a computing device to a power threshold; when the workload satisfies the power threshold, transition the computing device to an aggregate power mode in which the computing device draws a first amount of aggregate current from a main power supply and a secondary power supply; and when the workload fails to satisfy the power threshold while in the aggregate power mode, transition the computing device to a redundant power mode in which the computing device draws a second amount of aggregate current from the main and secondary power supplies that is less than an operational limit of either the main or redundant power supply.

15. The non-transitory computer-readable medium of claim 14, wherein the computing device is transitioned to the redundant power supply mode by a firmware interface between an operating system of the computing device and hardware of the computing device, without restarting the computing device.

Description:
POWER MODE TRANSITION

BACKGROUND

[0001] Computing devices may be provided with multiple power supplies. A first power supply, which in some cases may be referred to as a “main” power supply, may draw electricity from a source such as a power grid or battery, and may provide that electricity to hardware components of the computing device. These hardware components may include, for instance, a central processor, a fan, memory, a graphics processing unit (“GPU”), a network interface card (“NIC”), and so forth. Additional power supplies may be provided, e.g., as “redundant” power supplies.

BRIEF DESCRIPTION OF THE DRAWINGS [0002] Particular examples in accordance with the present disclosure will now be described, by way of example, and with reference to the accompanying drawings:

[0003] FIG. 1A schematically depicts a block diagram of an example computing device embodying selected aspects of the present disclosure;

[0004] FIG. 1 B schematically depicts an example of how techniques described herein may be implemented within a computer stack.

[0005] FIG. 2 illustrates two power mode states of a computing device and some example criteria and/or conditions for transitioning between the two power mode states; [0006] FIG. 3 depicts a method of transitioning a computing device from a redundant power mode to an aggregate power mode based on a predicted workload of the computing device;

[0007] FIG. 4 illustrates a non-transitory computer-readable medium comprising instructions that, in response to execution of the instructions by a processor, cause the processor to perform selected aspects of the present disclosure; and [0008] FIG. 5 depicts an example computer architecture on which selected aspects of the present disclosure may be implemented.

DETAILED DESCRIPTION

[0009] For simplicity and illustrative purposes, the present disclosure is described by referring mainly to an example thereof. In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. It will be readily apparent however, that the present disclosure may be practiced without limitation to these specific details. In other instances, some methods and structures have not been described in detail so as not to unnecessarily obscure the present disclosure. [0010] Additionally, it should be understood that the elements depicted in the accompanying figures may include additional components and that some of the components described in those figures may be removed and/or modified without departing from scopes of the elements disclosed herein. It should also be understood that the elements depicted in the figures may not be drawn to scale and thus, the elements may have different sizes and/or configurations other than as shown in the figures.

[0011] In some computing devices, a secondary, second, or “redundant,” power supply may serve as backup in case the first power supply malfunctions, e.g., to facilitate continued operation of the computing device after the first power supply fails. In some cases, the second power supply may be activated upon failure of the first power supply. In other cases, the second power supply and the first power supply together may provide an aggregate amount of electricity to the computing device. In the latter case, both power supplies may be limited to drawing up to a threshold amount of power, e.g., up to 50% of their individual operational limits, so that if one power supply fails the other can take over to ensure continued operation of the computing device.

[0012] When hardware components are added to a computing device, it is possible that the first and/or second power supply may be overwhelmed. For example, GPU(s) may be added to computing devices to enable performance of computationally complex tasks related to graphics and/or artificial intelligence. The first power supply alone, or both the first and second power supplies collectively (e.g., each drawing current at 50% or less of their capability), may suffice while these extra hardware components are idle or performing relatively simple tasks. However, when these extra hardware components are utilized to perform more computationally-expensive tasks, such as implementing artificial intelligence models or rendering complex graphics, the computing device may use more electricity than the first power supply is able to draw on its own, or less than the first and second power supplies are permitted to provide in the aggregate.

[0013] Examples are described herein for dynamically transitioning computing devices with multiple power supplies, such as first and second/redundant power supplies, between “redundant” and “aggregate” power modes based on workloads imposed on, or predicted to be imposed on, the computing device. In the redundant power mode, redundant power suppl(ies) may be activated or brought into service in circumstances such as malfunction (e.g., failure) of the first power supply. Otherwise, the redundant power suppl(ies) may remain idle. Alternatively, redundant power supp!(ies) may operate alongside the first power supply in the redundant power mode, albeit beneath some imposed power threshold (e.g., less than 50% of its maximum power). By contrast, in the aggregate power mode, current from the second or redundant power suppl(ies) may be aggregated with current from the first power supply to provide an increased amount of power to the computing device (e.g., greater than 50% of operational limits of either power supply alone).

[0014] In various examples, the workload of a computing device may be monitored and/or predicted, e.g,, by examining tasks performed by and/or to be performed by the computing device. As used herein, a “workload” may refer to an amount of computing resources, such as processor cycles and memory usage, that are used, or predicted to be used by a computing device in order to perform a task. In some cases, a workload may be a proxy for an amount of power the computing device will use, although this is not always the case. [0015]A computing device performs a “task” when a processing resource such as a processor (e.g., central processing unit, or “CPU”) or a GPU executes computer-readable instructions stored in memory. A simple task such as execution of a word processing application may use a fraction of processing cycles and/or memory of the computing device. By contrast, a computationally- complex task such as three-dimensional animation (e.g., for a video game) or implementation of an artificial intelligence model may use a much greater portion of processing cycles and/or memory of the computing device. Thus, in some examples, a future workload of a computing device may be predicted based on computer-readable instructions that the computing device is going to be executing.

[0016] If the workload satisfies some criterion, e.g., approaching, meeting, and/or exceeding a threshold associated with the computing device, the computing device may be transitioned from the redundant power mode to the aggregate power mode. If the workload satisfies another criterion, e.g., falling to or below the same threshold associated with the computing device or a different threshold, the computing device may be transitioned from the aggregate power mode back to the redundant power mode.

[0017] In some examples, techniques described herein may be implemented with computer-readable instructions that, when executed, operate a module on top of or as part of an operating system of the computing device. In some such examples, this module may interact with a lower-level firmware interface between an operating system and underlying hardware, such as a basic input/output system (“BIOS”) or Unified Extensible Firmware Interface (“UEFI”), to transition between power modes. Notably, this may enable the BIOS/UEFI to alter how electricity is drawn from multiple power supplies without restarting or rebooting the computing device. Consequently, a computing device may transition between the redundant and aggregate power modes with little or no disruption experienced by a user of the computing device.

[0018] in addition to transitioning between the redundant and aggregate power modes, in some examples, output may be provided to a user that solicits permission to transition the computing device from the redundant power mode into the aggregate power mode (or vice versa). Suppose a user plays a graphics-intensive video game. Prior to or upon reaching a stage in the video game that is known to impose a significant burden on computing resources (e.g., swarms of moving objects to render at once), the user may be prompted for permission to aggregate power from the redundant power supply in order to support the increased workload imposed on, for instance, a GPU of the computing device.

[0019] As noted previously, a purpose of some second or redundant power supplies is to ensure continued operation of a computing device in the event of first power supply failure. Commandeering a redundant power supply for additional electricity may enable the computing device to perform tasks having greater computational complexity — and hence, using greater amounts of computing resources such as processor cycles and memory — than it would otherwise. However, the risk of disrupting computing device operation altogether may increase because there is no longer a backup power supply. This risk may be acceptable under some circumstances, but may not be acceptable under others, such as where the computing device is performing tasks for which disruption may not be acceptable. Accordingly, in some examples, a measure of indispensability of another task already being performed (or to be performed) by a computing device may be determined. Based on this measure of indispensability, the computing device may be selectively or conditionally transitioned to the aggregate power mode. For example, if the measure of indispensability satisfies some threshold (e.g., the computing device is performing an indispensable task already), the transition may not occur, or a user may be prompted for permission to perform the transition. [0001] FIG. 1 A schematically depicts a block diagram a computing device embodying selected aspects of the present disclosure. The computing device 150 depicted in Fig. 1 may take various forms, such as: a desktop computing device, a laptop computing device, a tablet computing device, a mobile phone computing device, a computing device of a vehicle of the user (e.g., an in- vehicle communications system, an in-vehicle entertainment system, an in- vehicle navigation system), a smart appliance such as a smart television (or a standard television equipped with a networked dongle with automated assistant capabilities), and/or a wearable apparatus of the user that includes a computing device (e.g., a watch of the user having a computing device, glasses of the user having a computing device, a virtual or augmented reality computing device). Additional and/or alternative client computing devices may be provided.

[0020] Computing device 150 includes a first power supply 174, a second power supply 176, a processor 170, and memory 172 storing instructions that, when executed, cause the processor 170 to perform method 100. First power supply 174 and/or second power supply 176 may take various forms. In some examples, one or both may take the form of a cord or wire that connects computing device 150 to a power source such as the “grid,” or “mains” electricity (which may be a source of AC or DC electricity), to a generator, etc. Alternatively, in some cases, one or both power supplies may connect to or include a battery, such as a lithium-ion battery.

[0021] FIG. 1B demonstrates how, in some examples, techniques described herein may be implemented as part of a software stack of computing device 150. In particular, application(s) 140 may be executed on top of an operating system 142. A firmware interface 144 such as BIOS, UEFI, some combination thereof, or some other firmware interface, may exist between the operating system 142 and the hardware of the computing device, including multiple power supplies 174 and 176. This firmware interface 144 may transition the computing device 150 between the redundant and aggregate power modes. This transition may occur without restarting the computing device.

[0022] Referring to both FIGs. 1A and 1Bm method 100 begins with determining the workload of the computing device 150 (102). In response to determining that the workload satisfies a first criterion, at block 104A, the computing device 150 transitions from the redundant power mode to the aggregate power mode. In various examples, the transition of block 104A may be performed before the workload actually exceeds operational limits of the power supplies 174, 176. Otherwise computing device 150 could malfunction or crash. Accordingly, in various examples, the workload may be predicted ahead of time, i.e. , before the workload is actually implemented. Alternatively, the first criterion of block 104A may include a workload threshold that is lower than what would actually exceed operational limits of the power supplies 174, 176. Accordingly, when such a workload threshold is met, the transition of block 104A can occur before the workload exceeds those operational limits.

[0023] In response to determining that the workload satisfies a second criterion, at block 104B, the computing device 150 is transitioned from the aggregate power mode to the redundant power mode (104B). This second criterion may include, for instance, the same workload threshold or a different workload threshold as was used in block 104A. And again, to avoid crashing computing device 150, this threshold may be below operational limits of power supplies 174, 176, so that computing device 150 does not transition back to redundant mode before the workload is back within operational limits.

[0024] When in redundant power mode, the computing device 150 draws less than a maximum power draw associated with the first power supply 174 or, in some examples, less than or equal to a certain percentage, e.g. 50%, of the maximum power draws associated with the first 174 and the second 176 power supplies. This percentage may be the same for each power supply or may vary depending on the power supply. When the computing device 150 is in the aggregate power mode, in some examples, the load of the computing device 150 may be split such that the first power supply 174 carries up to or near Its associated maximum load and the second power supply 176 shoulders any load exceeding that amount. In other examples, the first 174 and second 176 power supplies may split the load of the computing device 150 in myriad ways, such as carrying the load evenly or proportionally compared with one another. [0025] In some examples, the processor 170 may operate a module (not depicted) on top of or as part of the operating system 142 of the computing device 150. In some of these examples, this module may interact with a lower- level firmware interface 144 between the operating system 142 and underlying hardware, such as first and second power supplies 174, 176, to perform the transitions between the two power modes. By enabling the firmware interface 144 (BIOS/UEFI) to alter how electricity is drawn from multiple power supplies without restarting or rebooting the computing device, a computing device may transition between the redundant and aggregate power modes with little or no disruption experienced by a user of the computing device.

[0026] In some examples, the workload of the computing device 150 (102) may be determined by determining the maximum power draw of the computing device 150 and any installed or connected components that are powered by the power supplies 174/176 and determining the maximum power draw of a current or future task of a user of the computing device 150. Determining the workload of the computing device 150 (102) may occur at regular intervals, random intervals, or upon certain changes being detected in the state or the settings of the operating system 142, internal or connected external hardware components, or applications 140 installed on the device. The first criterion and/or the second criterion may be set by the user, by the operating system 142, or elsewhere. In some examples, the user may be prompted when either the first or the second criterion are met to accept or deny the transition between power modes. The first and second criteria are discussed in more depth with respect to the description of FIG. 2.

[0027] FIG. 2 illustrates two power mode states of a computing device and some examples of criteria and conditions for state transitions between the two power mode states. As stated above, when a computing device, such as the computing device 150 of FIG. 1 , is in the redundant power mode 250, the power draw of the computing device may be less than the maximum power draw of a first of two power supplies. Alternatively, the power draw of either power supply and/or the computing device as a whole may be limited, e.g., by operating system 142 or firmware interface 144, to a percentage of the total maximum power draw of the first power supply and/or the second power supply, alone or in combination, e.g., 50% of the combined maximum power draw. The load may be split between the first and the second power supplies evenly, proportionally, disproportionally, or dynamically based on the operational capabilities of the power supplies, the operating system 142, and the applications 140 running on the computing device 150.

[0028] Various criteria and/or conditions 215 may cause a computing device (e.g., 150) that is currently in the redundant power mode 250 to transition into the aggregate power mode 260. In some examples, the first set of criteria and/or conditions 215 may include, for instance, the power draw of the first power supply or a combined amount of power drawn from the combined power supplies has exceeded their respective limits discussed above. Another example criterion or condition 215 may include the power draw of the first power supply or of the combined power supplies being expected to exceed their respective limits discussed above. In some such examples, this criterion or condition may further include whether a user has provided input confirming their intent or authorization to transition the computing device from the redundant power mode 250 to the aggregate power mode 260.

[0029] The user-provided input confirming their intent or authorization to transition the computing device from the redundant power mode 250 to the aggregate power mode 260 may be affirmatively set by the user in a settings menu or may be provided in response to a prompt asking the user if they would like to transition from the redundant power mode 250 to the aggregate power mode 260. Such a prompt may be provided, for instance, if it is detected that components have been installed in or connected to the computing device 150 which could cause a power draw that, for instance, exceeds the limits discussed previously. Alternatively, such a prompt may be provided before executing a task initiated by the user that is predicted to cause a power draw that exceeds the limits described previously.

[0030] Likewise, various criteria and/or conditions 225 may cause a computing device (e.g., 150) that is currently in the aggregate power mode 260 to transition into the redundant power supply mode 250. This second set of criteria and/or conditions 225 may include, for instance, the power draw of the computing device 150 having dropped to a level that is less than or equal to the maximum power threshold of the first power supply. Alternatively, criteria or conditions 225 may include the power draw of the computing device 150 dropping to a level that is less than or equal to 50% of the maximum power threshold of the first power supply and/or the second power supply, combined or individually. [0031] As another example, criteria or conditions 225 for transitioning the computing device 150 from aggregate power mode 260 to redundant power mode 250 may include the computing device 150 having been rebooted. As yet another example, criteria or conditions 225 may include whether user-provided conditions and/or criteria for switching from the aggregate power mode 260 to the redundant power mode 250 have been met or satisfied. These user- provided conditions and/or criteria for switching from the aggregate power mode 260 to the redundant power mode 250 may include, for instance, a completion of a task associated with the transition from the redundant power mode 250 to the aggregate power mode 260, the expiration of an aggregate power mode 260 time-out period, etc.

[0032] In some examples, rather than automatically transitioning the computing device to the other of the redundant power mode 250 or the aggregate power mode 260, meeting or satisfying either the first 215 or second set of criteria and/or conditions 225 will cause a prompt to be presented to the user that requests the user confirm their intent or authorization to transition the computing device into the other of the redundant power mode 250 or the aggregate power mode 260. In a case where a prompt is provided to the user to confirm their intent or authorization to transition the computing device from the redundant power mode 250 to the aggregate power mode 260, the prompt may include fields for the user to provide the time-out period or other criteria and/or conditions 225 for the computing device to transition from the aggregate power mode 260 back to the redundant power mode 250. These fields may include, for instance, default settings that may be editable by the user or that may be predetermined based on system and task parameters. In some examples, the user may set either set of criteria and/or conditions 215, 225 in a settings menu or during the initial setup process of the computing device.

[0033] FIG. 3 depicts a method of transitioning a computing device from a redundant power mode to an aggregate power mode based on a predicted workload of the computing device. Various operations of method 300 may be reordered, omitted, and/or combined with other operations.

[0034] At block 302, a workload is predicted that corresponds to a task that uses of a resource of the computing device. A workload may be predicted for a task in various ways. In some examples, the task may be a particular application or portion thereof that is flagged or is otherwise known to use substantial computing resources. In some such examples, when this application (or portion) is to be implemented, a workload that will result may be predicted, e.g,, using various metrics associated with number of computer-readable instructions, number of graphics to be rendered (e.g., greater numbers use more computing resources), size of an artificial intelligence model to be implemented, etc.

[0035] The predicting at 302 may occur based on scheduled prediction intervals, the initialization of the task or of a process at the computing device, according to pre-defined or user-provided settings, certain applications being initiated, certain internal or external hardware components being accessed or being determined to likely be accessed in association with the task or resource, the current power draw on one or both power supplies satisfies a separate threshold, rebooting or restarting of the computing device, or detection of installation or updates to certain computer-readable instructions sets (software) or hardware. These predictions may be made based on manufacturer or developer-provided data, internal diagnostics, and/or historical data corresponding to certain tasks or resource parameters of the user, the computing device, similar users, or similar computing devices.

[0036] For example, the computing device may be able to access manufacturer data or internal diagnostics that may indicate the maximum power draw or current limit of an installed component, such as a graphics card, and then may correlate this data to a user’s historical use of the computing device after the graphics card was installed. Thus, a graphics card with a potentially overwhelming power draw may increase the predicted workload of a task associated with that graphics card. However, historical data showing that the power draw of the graphics card for the same or similar task of the user in the past may result in a lower predicted workload.

[0037] At block 304, this predicted workload is compared to a threshold associated with the first or the second power supply of the computing device.

For example, the predicted workload may be compared to a threshold associated with the first power supply, to a threshold associated with the second power supply, or to a threshold associated with the combined capacity of both power supplies. Which threshold is used may depend on the power draw limits or load-sharing usage of the example. For example, if the maximum capacities of both power supplies are the same and the current loads are being evenly split, the system may use a threshold associated with either or both power supplies as either standard would reveal the additional load that each power supply could take on. In some cases, depending on the power supplies, the current load split among the power supplies, and internal diagnostics, one threshold may be selected over another threshold to determine the capacity of one or both power supplies to take on additional workload.

[0038]At block 306, based on the comparing of block 304, the computing device is transitioned from the redundant power mode to the aggregate power mode. This method 300 allows a computing device to be transitioned from redundant power mode to aggregate power mode before the current power draw exceeds various limits associated with the power supplies in the redundant power mode. This allows for switching to the aggregate power mode before the extra power will begin to be used. This method thus minimizes the risk to the user of losing work or progress should the load ultimately exceed the maximum power draw in redundant power mode and the computing device shuts off beforehand.

[0039] At 306, the transition from the redundant power mode to the aggregate power mode by the computing device may occur in several situations. These are discussed in more detail above with respect to the criteria and/or conditions of FIG. 2. [0040]As noted previously, in some examples, the user may be prompted to confirm the transition from redundant power mode to aggregate power mode before the transition 306 is completed. In some examples, this prompt may be provided when there are processes active on the computing device that are considered indispensable to either the operating system or the user. For example, the user may be prompted before transitioning from redundant power mode to aggregate power mode if drivers are being updated in the background. This is because interrupting driver updates with a sudden shut down, due to one power supply failing and the other being unable to shoulder the entire computing device load in aggregate power mode, could cause subsequent performance issues for the computing device.

[0041] As another example, if the user has entered a particular amount of data into a spreadsheet but has not yet saved their work, this may be considered “indispensible” to the user based on the amount of time that user has spent in producing that work and thus would need to spend to reproduce that work should it be lost. As yet another example, if the process or program being executed is a video game, no prompt may be presented as it may be assumed that video game progress is “dispensable” for either the operating system (OS) or the user. As yet another example, an application that controls operation of medical equipment such as a respirator may be deemed indispensable, and therefore may receive a commensurate measure of indispensability.

[0042] The determination of whether an active process is “indispensable” can depend on pre-defined settings, settings provided by the user, or analysis of historical use patterns of the user or other users of the same model of computing device or of similar computing devices. In some examples, whether a prompt is displayed or not will be based on the measure of indispensability of a process. In some examples, the computing device may not be transitioned from the redundant power mode to the aggregate power mode if the measure of indispensability of process(es) currently running on the computing device, individually or in combination, exceed some threshold.

[0043] FIG. 4 illustrates a non-transitory computer-readable medium in the form of memory 172 that includes computer-readable instructions for implemented selected aspects of the present disclosure. Execution of these instructions by a processor, such as processor 170, cause the processor to perform selected aspects of the present disclosure.

[0044]At 402, instructions may be executable to compare a current workload of a computing device (e.g., 150) to a power draw threshold. The threshold associated with the instructions at 402 may be a threshold associated with pre- defined load limits of one or both power supplies 174, 176 of the computing device. These load limits may be set as a percentage of the maximum capacity of each power supply 174, 176 or of the power supplies 174, 176 combined. For example, the computing device may be designed such that the second power supply 176 remains idle while it is in redundant power mode. In such an example, the current workload may be compared to a threshold associated with the pre-defined load limit of the first power supply 174.

[0045] At 404, instructions may be executable to transition the computing device from redundant power mode to aggregate power mode 404A when the workload satisfies the threshold. At 404B, instructions may be executable to transition the computing device from aggregate power mode to redundant power mode when the workload fails to satisfy the threshold.

[0046] As disclosed above with respect to FIGS. 1-3, the computing device (e.g., 150) may include a first power supply (e.g,, 174) and a second power supply (e.g., 176). The computing device may limit the maximum power draw of one or both power supplies 174, 176 in redundant power mode, such that if one power supply 174, 176 fails the other may be able to shoulder the load in order to prevent the computing device from shutting down. In aggregate power mode, these limits may be modified or lifted completely, such that the workload of the computing device may exceed the maximum capacity of any one power supply 174, 176. This allows the user to risk the computing device shutting down, and the user losing work or valuable time should that power supply fail, so that the user may allow the computationally-heavy task, that would normally exceed the maximum capacity of one power supply of the computing device, to be performed. [0047] At 404A or 404B, the computing device may be transitioned from redundant power mode to aggregate power mode if the current load exceeds the pre-defined load limit of the first power supply 174 or transitioned from the aggregate power mode to the redundant power mode if the current load is less than the pre-defined load limit of the first power supply 174, respectively. In examples where the first 174 and second 176 power supplies share the load while in redundant mode, the threshold used may be associated with the combined load limit of the two power supplies 174, 176 or with the threshold associated with the power supply 174, 176 that has the greater load limit in redundant power mode,

[0048] It should be appreciated that various thresholds associated with individual power supplies 174, 176 or with the combination of power supplies 174, 176 may be used in a myriad of cases based on the current loads, historical data associated with the power modes, resources being accessed at and by the computing device , connected internal and external hardware components, computer-readable instructions installed on the computing device , available diagnostics information, manufacturer specifications, and any other information that could affect the power supply 174, 176 operation or current or predicted workload of the computing device .

[0049] Fig. 5 is a block diagram of an example computer system 510. Computer system 510 may include a one processor 514 which communicates with a number of peripheral devices via bus subsystem 512, These peripheral devices may include a storage subsystem 524, including, for example, a memory subsystem 525 and a file storage subsystem 526, user interface output devices 520, user interface input devices 522, and a network interface subsystem 516. The input and output devices allow user interaction with computer system 510, Network interface subsystem 516 provides an interface to outside networks and is coupled to corresponding interface devices in other computer systems.

[0050] User interface input devices 522 may include input devices such as a keyboard, pointing devices such as a mouse, trackball, a touch interaction surface, a scanner, a touchscreen incorporated into the display, audio input devices such as voice recognition systems, microphone(s), vision sensor(s), and/or other types of input devices. In general, use of the term "input device" is intended to include all possible types of devices and ways to input information into computer system 510 or onto a communication network.

[0051] User interface output devices 520 may include a display subsystem, a printer, a fax machine, or non-visual displays such as audio output devices. The display subsystem may include a cathode ray tube (“CRT”), a flat-panel device such as a liquid crystal display (“LCD”), a projection device, or some other mechanism for creating a visible image. The display subsystem may also provide non-visual display such as via audio output devices. In general, use of the term "output device" is intended to include all possible types of devices and ways to output information from computer system 510 to the user or to another machine or computer system.

[0052] Storage subsystem 524 stores machine-readable instructions and data constructs that provide the functionality of some or all of the modules described herein. These machine-readable instruction modules are executed by processor 514 alone or in combination with other processors. Memory 525 used in the storage subsystem 524 may include a number of memories.

[0053] For example, a main random access memory (“RAM”) 530 may be used during program execution to store, among other things, instructions 531 for transitioning between power modes as described herein. Memory 525 used in the storage subsystem 524 may also include a read-only memory (“ROM”) 532 in which fixed instructions are stored.

[0054] A file storage subsystem 526 may provide persistent or non-volatile storage for program and data files, including instructions 527 for transitioning between power modes as described herein, and may include a hard disk drive, a floppy disk drive along with associated removable media, a CD-ROM drive, an optical drive, or removable media cartridges. The modules implementing the functionality of certain implementations may be stored by file storage subsystem 526 in the storage subsystem 526, or in other machines accessible by the processor(s) 514.

[0055] Bus subsystem 512 provides a mechanism for letting the various components and subsystems of computer system 510 communicate with each other as intended. Although bus subsystem 512 is shown schematically as a single bus, other implementations of the bus subsystem may use multiple busses.

[0056] Computer system 510 may be of varying types including a workstation, server, computing duster, blade server, server farm, or any other data processing system or computing device. Due to the ever-changing nature of computers and networks, the description of computer system 510 depicted in Fig, 5 is intended as a specific example for purposes of illustrating some implementations. Many other configurations of computer system 510 are possible having more or fewer components than the computer system depicted in Fig. 5.

[0057] Those having ordinary skill in the art shall recognize, in light of the description provided, that the elements and procedures described above may be implemented in a computer environment using hardware, software, firmware, and/or combinations of these,

[0058] Although described specifically throughout the entirety of the instant disclosure, representative examples of the present disclosure have utility over a wide range of applications, and the above discussion is not intended and should not be construed to be limiting, but is offered as an illustrative discussion of aspects of the disclosure.