Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This application has been examined. Claims 1-20 are pending.
The Group and/or Art Unit location of your application in the PTO has changed. To aid in correlating any papers for this application, all further correspondence regarding this application should be directed to Group Art Unit 2175.
Specification
The title of the invention is not descriptive. A new title is required that is clearly indicative of the invention to which the claims are directed.
Claim Rejections - 35 USC § 103
4. The following is a quotation of 35 U.S.C. § 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art t which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
5. Claims 1-4, 7-11, 14-18 are rejected under AIA 35 U.S.C. § 103 as being unpatentable over Ranganathan et al. (US Pub No. 2007/0067657) in view of Higginson et al. (US Pub No. 2023/0195591).
In regard to claims 1, 8, 15, Ranganathan et al. disclose a system, a computer product, and a computer-based method of dynamic optimization of power consumption in storage systems, the method comprising: receiving historical time-series data from one or more components in a data center (as shown in Fig. 2, which is reproduced below for ease of reference and convenience, Ranganathan discloses the power management agent 210 is configured to receive information pertaining to the amount of power being consumed by each of the compute nodes 120 at run-time or design-time. The amount of power being consumed by each of the compute nodes 120 may be detected through use of power monitors 220 associated with each of the compute nodes 120. See ¶ 27-28, 31, 49-50);
PNG
media_image1.png
982
696
media_image1.png
Greyscale
predicting one or more workload metrics of the one or more components during a pre-defined time range based on the historical time-series data (in Ranganathan, The power management agent 210 may also determine when the throttling of the compute nodes 120 is triggered, such as, when either or both of a power threshold and a temperature threshold is exceeded. In addition, the power management agent 210 may determine which of the compute nodes 120 are to be throttled. For instance, the power management agent 210 may select the compute nodes 120 with the highest utilization, the compute nodes 120 with the lowest utilizations, compute nodes 120 that have not previously been throttled, etc. The power management agent 210 may, moreover, control how the compute nodes 120 are throttled, such as, CPU throttling, memory throttling, disk throttling, etc., as well as the levels to which the compute nodes 120 are throttled, for instance, one power state, two power states, etc. In other words, the power management agent 210 may control the throttling of the compute nodes 120, for instance, by varying the voltage and frequency of one or more processors, by varying the power states or the disk spin rates of memories contained in the compute nodes 120, by varying which of the components contained in the compute nodes 120 are activated and deactivated. See ¶ 35-38); identifying one or more required resources for the one or more components to handle the predicted one or more workload metrics during the pre-defined time range (in Ranganathan, determining whether at least one component of the one or more components requires a resource allocation increase during the pre-defined time range based on the identified one or more required resources (in Ranganathan, power management agent 210 may also determine when the throttling of the compute nodes 120 is triggered, such as, when either or both of a power threshold and a temperature threshold is exceeded. In addition, the power management agent 210 may determine which of the compute nodes 120 are to be throttled. For instance, the power management agent 210 may select the compute nodes 120 with the highest utilization, the compute nodes 120 with the lowest utilizations. See ¶ 35-41); and in response to determining the at least one component does not require the resource allocation increase, executing a first action to scale down at least one first resource during the pre-defined time range (in Ranganathan, power management agent 210 may also determine when the throttling of the compute nodes 120 is triggered, such as, when either or both of a power threshold and a temperature threshold is exceeded. In addition, the power management agent 210 may determine which of the compute nodes 120 are to be throttled. For instance, the power management agent 210 may select the compute nodes 120 with the highest utilization, the compute nodes 120 with the lowest utilizations. See ¶ 35-41). But Ranganathan et al. do not specifically disclose the method of identifying one or more required resources for the one or more components to handle the predicted one or more workload metrics during the pre-defined time range. In the same field of endeavor, Higginson et al. teach the method of identifying one or more required resources for the one or more components to handle the predicted one or more workload metrics during the pre-defined time range (as shown in Fig. 3, which is reproduced below for ease of reference and convenience, Higginson discloses the system identifies a target entity associated with the workload identified in the forecast request (Operation 304). The target entity is associated with a level of granularity associated with the forecast request. For example, the forecast request may include a request to forecast a workload for a virtual machine. The request may be associated with a level of granularity specifying attributes of servers in a server cluster hosting the virtual machine. See ¶ 95-97).
PNG
media_image2.png
1015
656
media_image2.png
Greyscale
It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention to a person having ordinary skill in the art to modify the teaching of Ranganathan et al. to include the forecast resource utilization, computational workloads and other metrics, as taught by Higginson et al., in order to allow potential errors, failures, and/or outages to be prevented, which reduces downtime, and/or improves the execution of applications, databases, servers etc.
In regard to claims 2, 9, 16, Ranganathan et al. disclose further: in response to determining the at least one component does require the resource allocation increase, executing a second action to scale up at least one second resource during the pre-defined time range (in Ranganathan, the power management agent 210 may determine whether the sum of the current power consumption levels of the compute nodes 120 in the compute node pool and the requested power increase in the compute node 120 falls below an allowable power budget for the compute node pool, as indicated at step 412. The allowable power budget and an associated allowable power budget limit for the compute node pool may be determined at design time or they may comprise run-time configurable system parameters. See ¶ 68-70).
In regard to claims 3, 10, 17, Higginson et al. disclose further: training one or more machine learning models to forecast one or more future workload metrics of the one or more components based on the historical time-series data, wherein the training further comprises: inputting the historical time-series data including input/output operations per second (IOPS), read/write throughput, and response time of a storage controller into a workload forecaster model, wherein the workload forecaster model forecasts future values for the input/output operations per second (IOPS), the read/write throughput, and the response time; and feeding the forecasted future values into a storage resource prediction model, wherein the storage resource prediction model predicts the one or more required resources for the one or more components to handle the forecasted future values (in Higginson, the system identifies a target entity associated with the workload identified in the forecast request (Operation 304). The target entity is associated with a level of granularity associated with the forecast request. For example, the forecast request may include a request to forecast a workload for a virtual machine. The request may be associated with a level of granularity specifying attributes of servers in a server cluster hosting the virtual machine. See ¶ 67-74, 95-97). It would have been obvious to a person of ordinary skill in the art before the effective filling date of the claimed invention to a person having ordinary skill in the art to modify the teaching of Ranganathan et al. to train the collected data to predict the forecast resource utilization, computational workloads and other metrics, as taught by Higginson et al., in order to allow potential errors, failures, and/or outages to be prevented, which reduces downtime, and/or improves the execution of applications, databases, servers etc.
In regard to claims 4, 11, 18, Ranganathan et al. disclose wherein: executing the first action further comprises powering down at least one central processing unit (CPU) core in response to determining a required number of CPU cores is less than an active number of CPU cores during the pre-defined time range; and executing the second action further comprises powering up the at least one CPU core in response to determining the required number of CPU cores is greater than the active number of CPU cores during the pre-defined time range (in Ranganathan, the power management agent 210 may determine whether the sum of the current power consumption levels of the compute nodes 120 in the compute node pool and the requested power increase in the compute node 120 falls below an allowable power budget for the compute node pool, as indicated at step 412. The allowable power budget and an associated allowable power budget limit for the compute node pool may be determined at design time or they may comprise run-time configurable system parameters. See ¶ 68-70).
In regard to claims 7, 14, Ranganathan et al. disclose wherein: executing the first action further comprises slowing a speed of at least one cooling fan in response to determining a required cooling fan speed is less than an active cooling fan speed during the pre-defined time range; and executing the second action further comprises increasing the speed of the at least one cooling fan in response to determining the required cooling fan speed is greater than the active cooling fan speed during the pre-defined time range (in Ranganathan, a thermal event is detected, the compute node 120 may set its power state (P.sub.c) to the minimum processor state (P.sub.n) at step 514 (FIG. 5B). In addition, the compute node 120 may notify the power management agent 210 of the power state change due to the thermal event. The compute node 120 may further track the thermal event to determine whether the thermal event as cleared, as indicated at step 516. If the thermal event has not cleared at step 516, the compute node 120 may continue to operate at the minimum power state (P.sub.n) until it is determined that the thermal event has cleared. See ¶ 62-63).
Examiner's note:
Examiner has cited particular columns and line numbers in the references applied to the claims above for the convenience of the Applicant. Although the specified citations are representative of the teachings of the art and are applied to specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested from the Applicant in preparing responses, to fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passages as taught by the prior art or disclosed by the Examiner.
Allowable Subject Matter
6. Claims 5-6, 12-13, 19-20 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
7. The following is an Examiner's statement of reasons for the indication of allowable subject matter: Claims 5-6, 12-13, 19-20 are allowable over the prior art of record because the prior arts, cited in its entirety, or in combination, do not teach
wherein: executing the first action further comprises slowing a speed of at least one ethernet port in response to determining a required ethernet port speed is less than an active ethernet port speed during the pre-defined time range; and executing the second action further comprises increasing the speed of the at least one ethernet port in response to determining the required ethernet port speed is greater than the active ethernet port speed during the pre-defined time range (claims 5, 12, 19);
wherein: executing the first action further comprises powering down at least one non-volatile memory express (NVMe) drive in response to determining a required number of NVMe drives is less than an active number of NVMe drives during the pre-defined time range; and executing the second action further comprises powering up the at least one NVMe drive in response to determining the required number of NVMe drives is greater than the active number of NVMe drives during the pre-defined time range (claims 6, 13, 20).
Conclusion
8. Claims 1-4, 7-11, 14-18 are rejected. Claims 5-6, 12-13, 19-20 are objected.
9. The prior arts made of record and not relied upon are considered pertinent to applicant's disclosure.
Chiba et al. (US Pub No. 2025/0278313) disclose the methods for identifying resource utilization levels for processors and memory of each of the plurality of compute nodes, calculating, for each nodes, an idle power level, an activation power level, and a dynamic power level, and identifying characteristics of the workload to be deployed.
Banerjee et al. (US Pub No. 2025/0086009) disclose the systems, methods, and apparatuses can estimate specific timeframes that workloads are to be completed, identify one or more processes that are being executed to perform the workloads. These systems, methods, and apparatuses can dynamically provision one or more performance states from among these different performance states to execute the process to complete the workloads within the specific timeframes. These systems, methods, and apparatuses can dynamically provision the one or more performance states for the one or more process that optimizes power consumption and/or performance while completing the workloads within the specific timeframes.
Birnie et al. (US Pub No. 2025/0004534) disclose the method, computing system which receive, by at least one first computing device of a plurality of computing devices, and from a master computing device in communication with each of the plurality of computing devices, at least one command for changing a state of at least one user interface device of the first computing device; and responsive to receiving the command, change a state of at least one said user interface device from a first state with a first power usage to a second state with a second power usage that is less than the first power usage, thereby reducing the power usage of the first computing device.
Wang et al. (US Pub No. 2024/00403118) disclose the method (300) involves obtaining (302) an energy efficiency metric for a compute node in a cloud computing environment. The compute nodes are classified (304) into an energy efficiency groups based on the energy efficiency metric of the compute nodes. A partition of nodes is created (306) from the compute nodes, where the partition includes the compute node selected from the energy efficiency groups.
Harwani et al. (US No. 12,008,401) disclose automatic central processing unit (CPU) usage optimization includes: monitoring performance activity of a workload comprising a plurality of threads; and modifying a resource allocation of a plurality of cores for the plurality of threads based on the performance activity.
Uppalapati et al. (US Pub No. 2023/0273807) disclose the the cloud power optimizer module may determine background and active power usages of each physical host in the plurality of clusters. Further, the cloud power optimizer module may determine power usage of each VM based on the determined background and active power usages of each physical host.
Hanson et al. (US Pub No. 2009/0254909) disclose for each of a set of allocations of the workload among the devices, determining, for each device, the power consumption for the device to perform the workload allocated to the device by the allocation, the power consumption being determined based on the at least one efficiency model for each device; and determining a total power consumption of the devices.
Archer et al. (US Pub No. 2009/0300386) disclose the method involves powering up a portion of computer memory of a compute node (102), and receiving an instruction to load an application for execution by an operating system. Additional portions of computer memory are allocated by the operating system to the application. The additional portions of computer memory allocated for use by the application is powered up. The application is loaded to the powered up additional portions of computer memory by the operating system. One of the data communications networks is optimized for collective operations.
Jackson (US Pub No. 2011/0035072 discloses the method includes receiving information associated with at least one of energy consumption and a temperature of nodes each data center of a group of distributed data centers to yield received information. The method further includes analyzing workload associated with at least one second data center of the group of distributed data centers to yield an analysis of the workload, and modifying use of resources of the group of distributed data centers based on the received information and the analysis of the workload.
Goodrum et al. (US No. 7,702,931) disclose the method of adjusting power budgets of multiple servers within a data center comprises various actions. Such actions include, for example, organizing the multiple servers into hierarchical groups, dividing a total power budget among the hierarchical groups, and assigning power consumption levels to individual members of a particular hierarchical group such that the sum total of the assigned power consumption levels does not exceed the total power budget for the particular hierarchical group.
Gorbatow et al. (US No. 7,818,594) disclose the data center may be operated to achieve reduced power consumption by matching workloads to specific platforms. Attributes of the platforms may be compiled and those attributes may be used to allocate workloads to specific platforms. The attributes may include performance attributes, as well as power consumption attributes.
Schnier (US Pub No. 2013/0185415) discloses the method involves monitoring consumption of workload assignments (198) by a compute node from a set of compute nodes (102) of a parallel computer (100) by a distribution controller (199). Unconsumed workload assignments are distributed to the compute nodes based on the consumption of the workload assignments of each compute node by the distribution controller, such that the consumption of each compute node is within predetermined percentage of consumption of the other compute nodes in the set of compute nodes.
10. Any inquiry concerning this communication or earlier communications from the examiner should be directed to examiner Raymond Phan, whose telephone number is (571) 272-3630. The examiner can normally be reached on Monday-Friday from 6:30AM- 3:00PM. The Group Fax No. (571) 273-8300.
Communications via Internet e-mail regarding this application, other than those under 35 U.S.C. 132 or which otherwise require a signature, may be used by the applicant and should be addressed to [raymond.phan@uspto.gov].
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
All Internet e-mail communications will be made of record in the application file. PTO employees do not engage in Internet communications where there exists a possibility that sensitive information could be identified or exchanged unless the record includes a properly signed express waiver of the confidentiality requirements of 35 U.S.C. 122. This is more clearly set forth in the Interim Internet Usage Policy published in the Official Gazette of the Patent and Trademark on February 25, 1997 at 1195 OG 89.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see hop://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
Any inquiry of a general nature or relating to the status of this application should be directed to the TC 2100 central telephone number is (571) 272-2100.
/RAYMOND N PHAN/
Primary Examiner, Art Unit 2175