DETAILED ACTION
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 .
Status of Claims
The present application is being examined under the claims filed 11/18/2025. Claims 1, 4, 6, 9, 10, 15, and 18-20 have been amended. Claims 1-20 are pending. Claims 1-20 are rejected.
Response to Arguments
I. Applicant's arguments filed 11/18/2025 have been fully considered but they are not persuasive.
II. Applicant argues that neither Aurongzeb nor Paul, either alone or in combination, disclose or suggest the feature of "generating a power usage of each of the one or more software applications based, at least in part, on: the allocated responsibility of the total power consumption among the one or more CPUs and the one or more virtualization elements; and the association between the one or more CPUs, the one or more virtualization elements, and the one or more software applications running on the one or more CPUs and the one or more virtualization elements" as recited in claim 1 because "although Aurongzeb describes limiting an applications' access to resources and tracking the C02 emissions based on the use of resources, Aurongzeb does not disclose or suggest the allocation responsibility for that consumption among the CPUs and the virtualization elements and the established associations between the CPUs, the virtualization elements and the specific software applications running on those components." Examiner respectfully disagrees.
Aurongzeb discloses an information handling system (Aurongzeb FIG. 1-4, system including information handling systems [200, 270], UEM 280, and enterprise management system 205) which contains CPUs (Aurongzeb FIG. 2 and par 35, each IHS contains processor 242 [see par. 37, processor 242 can be a CPU]) and also that virtual computer system processing may be implemented using the method described by the reference (Aurongzeb par. 25), which suggests the inclusion or need to account for virtualization elements, as the software would be running via virtual computer systems. Note that Aurongzeb is not relied upon to address both the CPU and virtualization elements; rather Paul is used to demonstrate a system including a CPU, virtualization elements, and software. Aurongzeb teaches evaluating the power usage of a system having a CPU or virtualization elements, either of which is used to run software. Aurongzeb discloses software elements run on each system and that these software elements must be taken into account in order to predict the carbon emissions of the system, because the software applications may require access to and wear on hardware (Aurongzeb par. 12, software applications operating at the client information handling system may contribute to carbon emissions; and Aurongzeb par. 39, CO2 emission tracking system 250 uses received power consumption values, separated according to specific software applications' usages of those resources [including CPU resource] to determine when a specific software application is consuming a high amount of hardware resources [i.e., association between CPU and software]).
Therefore, the method disclosed by Aurongzeb does suggest "generating a power usage of each of the one or more software applications based, at least in part, on: the allocated responsibility of the total power consumption among the one or more CPUs [or] the one or more virtualization elements (Aurongzeb par. 49, hardware component resources consumed [i.e., CPU usage] is multiplied by CO2 emissions per power unit, i.e., hardware resource use is tied to power use); and the association between the one or more CPUs, […], and the one or more software applications running on the one or more CPUs [or] the one or more virtualization elements (Aurongzeb par. 48, software application emissions during execution are directly proportional to the percentage of hardware component resources consumed during such execution [i.e., power usage of the software application]; and Aurongzeb par. 39, CO2 emission tracking system 250 uses received power consumption values, separated according to specific software applications' usages of those resources [including CPU resource] to determine when a specific software application is consuming a high amount of hardware resources [i.e., association between CPU and software)"
In response to applicant's arguments against the references individually, one cannot show nonobviousness by attacking references individually where the rejections are based on combinations of references. See In re Keller, 642 F.2d 413, 208 USPQ 871 (CCPA 1981); In re Merck & Co., 800 F.2d 1091, 231 USPQ 375 (Fed. Cir. 1986).
Applicant also notes that Paul was not used to reject the above-recited features of claim 1. However, Paul was utilized to teach “wherein each server comprises one or more central processing units (CPUs) and virtualization elements” (Paul par 55, server clusters contain hosts 503 or virtual machines 504 (also see Paul par. 67 and 68, virtual machines may be run on the host servers [i.e., there are both CPUs and virtualization elements in the system] and Paul FIG. 3, server clusters 501a and 501b are associated with both host servers and virtual machines, and the virtual machines are associated with the host server [also note: each virtual machine 504 may comprise multiple applications/processes 505.])) and “determining an association between the one or more CPUs and the virtualization elements and one or more software applications running on the one or more CPUs and the virtualization elements” (Paul par. 51-53, calculation to determine power consumption of virtual machines and their applications/process in server dynamic power consumption [association between physical host servers and virtual machines, see par. 71, idle virtual machines and active virtual machines power use found based on resource utilization and applications running status]).
Therefore, the combination of Aurongzeb and Paul disclose or suggest the feature of "generating a power usage of each of the one or more software applications based, at least in part, on: the allocated responsibility of the total power consumption among the one or more CPUs and the one or more virtualization elements; and the association between the one or more CPUs, the one or more virtualization elements, and the one or more software applications running on the one or more CPUs and the one or more virtualization elements."
III. Applicant argues that claims 10 and 20 disclose similar features to those previously described with respect to claim 1. Examiner noted that these features are disclosed in Aurongzeb and Paul.
IV. No additional arguments were made as to the dependent claims, and as such, the rejection is maintained.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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 to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-14, and 16-20 are rejected under 35 U.S.C. 103 as being unpatentable over Aurongzeb et. al. (US 2024/0037684 A1) [previously cited] in view of Paul et. al. (US 2021/0042140 A1) [previously cited].
Regarding Claim 1, Aurongzeb discloses a system for measuring a power draw of an application (Aurongzeb FIG. 1-4, system including information handling systems [200, 270], UEM 280, and enterprise management system 205), comprising:
a power usage module (Aurongzeb Unified Endpoint Management (UEM) platform 180 [also labeled 280 in FIG. 2]); and
a memory having programming instructions stored thereon (Aurongzeb FIG. 1 and par. 27 and 28, main memory 102 or static memory 103 contains instructions 154 to complete the functionality of the UEM platform and CO2 emission tracking system), which, when executed by the power usage module, cause the system to perform operations, comprising:
retrieving one or more power usage metrics from one or more servers (Aurongzeb par. 33, UEM platform 280 may gather telemetries from a plurality of client information handling systems [IHS may be servers, see par. 27] that describe operating environments (e.g., power usage by a plurality of hardware components, or analytics for software usage)), wherein each server comprises one or more central processing units (CPUs) (Aurongzeb FIG. 2 and par 35, each IHS contains processor 242 [see par. 37, processor 242 can be a CPU]) [or] one or more virtualization elements (Aurongzeb par. 25, virtual computer system processing may be constructed to implement one or more of the methods or functionalities as described; and Aurongzeb par. 12, software applications operating at the client information handling system may contribute to carbon emissions);
determining a total power consumption of the one or more servers based, at least in part, on the retrieved one or more power usage metrics (Aurongzeb par. 36, power analytics module 240 monitors power consumption by each of the various hardware components in an IHS; and par. 45, UEM platform collects power data from the plurality of information handling systems to determine power consumption [see par. 36, CO2 emissions value is found using power consumed by various hardware components]);
allocating responsibility of the total power consumption among the one or more CPUs [or] the one or more virtualization elements (Aurongzeb par. 25, virtual computer system processing may be constructed to implement one or more of the methods or functionalities as described; and Aurongzeb par. 37, analytics module 240 may determine current usage of processing resources as a percentage of total capacity for the processor 242 [see par. 48, hardware component resources consumed is multiplied by CO2 emissions per power unit, i.e., hardware resource use is tied to power use]);
determining an association between the one or more CPUs, […], and one or more software applications running on the one or more CPUs [or] the one or more virtualization elements (Aurongzeb par. 39, CO2 emission tracking system 250 uses received power consumption values, separated according to specific software applications' usages of those resources [including CPU resource] to determine when a specific software application is consuming a high amount of hardware resources [i.e., association between CPU and software]; also see Aurongzeb par. 25, virtual computer system processing may be constructed to implement one or more of the methods or functionalities as described);
generating a power usage of each of the one or more software applications based, at least in part, on:
the allocated responsibility of the total power consumption among the one or more CPUs [or] the one or more virtualization elements (Aurongzeb par. 49, hardware component resources consumed [i.e., CPU usage] is multiplied by CO2 emissions per power unit, i.e., hardware resource use is tied to power use); and the association between the one or more CPUs, […], and the one or more software applications running on the one or more CPUs [or] the one or more virtualization elements (Aurongzeb par. 48, software application emissions during execution are directly proportional to the percentage of hardware component resources consumed during such execution [i.e., power usage of the software application]; and Aurongzeb par. 39, CO2 emission tracking system 250 uses received power consumption values, separated according to specific software applications' usages of those resources [including CPU resource] to determine when a specific software application is consuming a high amount of hardware resources [i.e., association between CPU and software); and
upon generating the power usage of each of the one or more software applications, generating one or more carbon emissions associated with each of the one or more software applications (Aurongzeb par. 55, the CO2 emission tracking system 250 may determine an application CO2 emissions value for one or more software applications based on the percentage of hardware component resources consumed during execution of that software application [see par. 48, hardware component resources consumed is multiplied by CO2 emissions per power unit, i.e., hardware resource use is tied to power use]).
Aurongzeb does not explicitly teach:
wherein each server comprises one or more central processing units (CPUs) and one or more virtualization elements;
allocating responsibility of the total power consumption among the one or more CPUs and the one or more virtualization elements;
determining an association between the one or more CPUs, the one or more virtualization elements, and one or more software applications running on the one or more CPUs and the one or more virtualization elements;
generating a power usage of each of the one or more software applications based, at least in part, on: the allocated responsibility of the total power consumption among the one or more CPUs and the one or more virtualization elements, and the association between the one or more CPUs, the one or more virtualization elements, and the one or more software applications running on the one or more CPUs and the one or more virtualization elements;
In the analogous art of monitoring resource utilization and energy consumption in servers and applications running on those servers, Paul teaches:
wherein each server comprises one or more central processing units (CPUs) and virtualization elements (Paul par 55, server clusters contain hosts 503 or virtual machines 504 (also see Paul par. 67 and 68, virtual machines may be run on the host servers [i.e., there are both CPUs and virtualization elements in the system] and Paul FIG. 3, server clusters 501a and 501b are associated with both host servers and virtual machines, and the virtual machines are associated with the host server [also note: each virtual machine 504 may comprise multiple applications/processes 505.]); also see Paul par. 41, the power used by the virtual machine is measured by tracking the hardware resources (such as the CPU, disk, memory, network, etc.) used by the virtual machine);
allocating responsibility of the total power consumption among the one or more CPUs and the virtualization elements (Paul par. 50-51, data collector module 201 collects the CPU, disk, memory and network usage of virtual machines and applications/processes running inside of it and uses this data to calculate power consumed [also note: different coefficients k1, k2, k3, k4 are used to represent the coefficients of CPU, memory, disk, and network usage, i.e., allocating responsibility of the power consumption to different elements of the system]);
determining an association between the one or more CPUs and the virtualization elements and one or more software applications running on the one or more CPUs and the virtualization elements (Paul par. 51-53, calculation to determine power consumption of virtual machines and their applications/process in server dynamic power consumption [association between physical host servers and virtual machines, see par. 71, idle virtual machines and active virtual machines power use found based on resource utilization and applications [i.e., software] running status]; and Paul par. 41, the power used by the virtual machine is measured by tracking the hardware resources (such as the CPU, disk, memory, network, etc.) used by the virtual machine);
generating a power usage of each of the one or more software applications based, at least in part, on: the allocated responsibility of the total power consumption among the one or more CPUs and the one or more virtualization elements, and the association between the one or more CPUs, the one or more virtualization elements, and the one or more software applications running on the one or more CPUs and the one or more virtualization elements (Paul par. 58-65, metrics from power usage evaluation includes the energy consumption of applications/processes [i.e., software] running inside virtual machines [also see par. 64, UI displays energy consumption of applications/processes running inside virtual machines, power usage must be generated in order to be displayed]; also see Paul par. 41, the power used by the virtual machine is measured by tracking the hardware resources (such as the CPU, disk, memory, network, etc.) used by the virtual machine);
Therefore, it would have been obvious of one of ordinary skill in the art, having the teachings of Aurongzeb and Paul before him, before the effective filing date of the claimed invention, to combine Aurongzeb’s system for collecting data from multiple IHS and calculating their carbon emissions with Paul’s consideration for virtualization elements in the power consumption estimate, the motivation being to accomplish the consideration of virtual computer system processing as described in Aurongzeb par. 25 while providing consideration for the power consumption of applications running inside virtual machines (Paul par. 7 and 11).
Regarding Claim 2, Aurongzeb in view of Paul discloses the system of claim 1,
wherein the system further comprises a power management console that captures one or more real-time power usage metrics from the one or more servers (Aurongzeb par. 37, power analytics module 240 determines current usage [i.e., real-time] of processing resources [see par. 48, hardware component resources consumed is multiplied by CO2 emissions per power unit, i.e., hardware resource use is tied to power use]).
Regarding Claim 3, Aurongzeb in view of Paul discloses the system of claim 1,
wherein the one or more power usage metrics comprises historical data and real-time data associated with the one or more servers (Aurongzeb par. 45, operating environment data is stored in telemetry 282 for later analysis [i.e., historical data]; and par. 33 UEM platform 280 may gather operating environment data (e.g., power usage by a plurality of hardware components, or analytics for software usage) [i.e., real time data]).
Regarding Claim 4, Aurongzeb in view of Paul discloses the system of claim 1, wherein the operations further comprise:
updating the power usage of each of the one or more software applications in response to at least a change in at least one of an application deployment and a server configuration (Paul FIG. 5 and par. 71, operation to reduce power usage in a server [i.e., change application deployment]; or Aurongzeb par. 100, client device CO2 emission tracking system to recommend an adjustment in usage of one or more software applications, which results in updated power usage configuration).
Regarding Claim 5, Aurongzeb in view of Paul discloses the system of claim 1, wherein the operations further comprise:
generating historical power usage trends for the one or more software applications (Aurongzeb par. 55. current application CO2 emissions value [based on power usage, see par. 36 and 39] are determined based on application analytics gathered during the current monitoring period (or most recent monitoring period), as well as previous application CO2 emissions values [also see par. 79, emission tracking system may compare performance at a first client information handling system to performance historically at the first client information handling system 250, or at other client information handling systems]).
Regarding Claim 6, Aurongzeb in view of Paul discloses the system of claim 1, wherein the operations further comprise:
generating, based, at least in part, on the generated power usage of the one or more software applications, one or more future power usage forecasts for the one or more software applications (Paul FIG. 5 steps 603-606, predict future power usage of applications inside virtual machines [see step 603] [also see par. 71, prediction module 405 forecasts the running status of applications/processes]).
Regarding Claim 7, Aurongzeb in view of Paul discloses the system of claim 1, wherein the operations further comprise:
generating one or more graphical visualizations of the generated power usage of the one or more software applications (Aurongzeb par. 90, graphical user interface (GUI) may display a portion of application CO2 emissions value attributable to one or more specific software applications [see Aurongzeb par. 48, hardware component resources consumed is multiplied by CO2 emissions per power unit, i.e., hardware resource use is tied to power use])
Regarding Claim 8, Aurongzeb in view of Paul discloses the system of claim 7,
wherein the operations further comprise generating one or more future forecasts of power usage of each of the one or more software applications (Paul FIG. 5 steps 603-606, predict future power usage [also see Paul par. 71, prediction module 405 forecasts the running status of applications/processes; and Aurongzeb par. 36 and 39, power usage is directly linked to CO2 emissions].
Regarding Claim 9, Aurongzeb in view of Paul discloses the system of claim 1,
wherein generating the one or more carbon emissions comprises multiplying the power usage associated with each software application by a predetermined carbon intensity (Aurongzeb par. 45, CO2 optimization engine 285 takes into account greenhouse gas emitted during the generation of a single unit of power (e.g., one kWh) by a power plant known to supply power within the geographic region [i.e., carbon intensity]; and par. 46, the operation used is multiplication [also see par. 48, CO2 emissions associated with execution of a software application may be directly proportional to the percentage of hardware component resources consumed during execution]).
Regarding Claim 10, Aurongzeb discloses a method (Aurongzeb par. 26, IHS has instructions to execute the method disclosed) for measuring a power draw of an application.
The remaining limitations of claim 10 are similar in scope to claim 1 as addressed above and is thus rejected under the same rationale.
Regarding Claim 11, the claim is similar in scope to claim 8 as addressed above and is thus rejected under the same rationale.
Regarding Claim 12, the claim is similar in scope to claim 9 as addressed above and is thus rejected under the same rationale.
Regarding Claim 13, Aurongzeb in view of Paul discloses the method of claim 10,
wherein the method further comprises presenting the generated power usage and carbon emissions calculations to a graphical user interface associated with a user device (Aurongzeb par. 90, graphical user interface (GUI) may display a portion of application CO2 emissions value attributable to one or more specific software applications; or Paul par. 59-64, show the energy consumption of applications/processes or virtual machines).
Regarding Claim 14, Aurongzeb in view of Paul discloses the method of claim 10, wherein generating the one or more carbon emissions comprises:
multiplying the total power consumption by a carbon intensity associated with the power consumption (Aurongzeb par. 45, CO2 optimization engine 285 takes into account greenhouse gas emitted during the generation of a single unit of power (e.g., one kWh) by a power plant known to supply power within the geographic region [i.e., carbon intensity]; and par. 46, the operation used is multiplication [also see par. 48, CO2 emissions associated with execution of a software application may be directly proportional to the percentage of hardware component resources consumed during execution])
Aurongzeb in view of Paul does not explicitly disclose that the carbon emissions are calculated as kilograms (kg). However, Aurongzeb calculated carbon emissions as pounds (Aurongzeb par. 46, emissions tracking system 250 may determine emissions value of 1.02 pounds of CO2). It would be obvious to one of ordinary skill in the art that kilograms and pounds are both units that are used to represent weight in the metric and imperial systems respectively.
Regarding Claim 16, Aurongzeb in view of Paul discloses the method of claim 10,
wherein the generated power usage considers a maximum power draw of the one or more servers (Aurongzeb par. 48, power usage can be represented as percent utilization [which is a percentage of the maximum power each component in each server can use]; and par 66, percent utilization is used to determine if an application is drawing too much power).
Regarding Claim 17, the claim is similar in scope to claim 7 as addressed above and is thus rejected under the same rationale.
Regarding Claim 18, Aurongzeb in view of Paul discloses the method of claim 10,
further comprising transmitting the one or more graphical visualizations over a power metrics network (Aurongzeb FIG 1 network 121 and par. 19, data from the UEM may be transferred to IHS over network 121 [the data from both is needed to make the visualizations]).
Regarding Claim 19, Aurongzeb in view of Paul discloses the method of claim 10,
further comprising receiving real-time power data from one or more hardware power measurement units associated with the one or more servers (Aurongzeb par. 37, power analytics module 240 determines current usage [i.e., real-time] of processing resources in the IHS).
Regarding Claim 20, Aurongzeb discloses a non-transitory computer readable medium containing computer executable instruction that, when executed by a computer hardware arrangement, cause the computer hardware arrangement to perform operations (Aurongzeb par. 29-30).
The remaining limitations of claim 20 are similar in scope to claim 1 as addressed above and is thus rejected under the same rationale.
Claim 15 is rejected under 35 U.S.C. 103 as being unpatentable over Aurongzeb in view of Paul, further in view of Ren et. al. “Carbon-Aware Energy Capacity Planning for Datacenters” [previously cited].
Regarding Claim 15, Aurongzeb in view of Paul discloses the method of claim 10. Aurongzeb in view of Paul does not explicitly teach:
wherein the generation of the one or more carbon emissions considers at least carbon offsetting projects and power received from renewable energy sources.
[Note: Aurongzeb generally discusses considering the CO2 emissions of a power plant in the geographic area (i.e., power received from energy sources), and updating that information when calculating a server’s CO2 use (Aurongzeb par. 45, CO2 emissions retrieve a distributed power CO2 emissions value for the geographic location of the first client information handling system for CO2 emissions calculation)].
In the analogous art of running devices in a carbon-aware manner, Ren teaches:
wherein the generation of the one or more carbon emissions considers at least carbon offsetting projects and power received from renewable energy sources (Ren pg. 394 [pdf pg. 4], Col. 1, section “Renewable Energy Products” and Table 1, datacenters may receive renewable energy at a lower Emission Factor)
Therefore, it would have been obvious of one of ordinary skill in the art, having the teachings of Aurongzeb, Paul, and Ren before them, before the effective filing date of the claimed invention, to combine Aurongzeb and Paul’s collection of carbon generation data from the power plants supplying the system with Ren’s consideration of renewable energy, the motivation being to lower the amount of CO2 generated per unit of energy to better meet legal standards (Ren Abstract).
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to COLE JIAWEI WENTZEL whose telephone number is (703) 756-4762. The examiner can normally be reached 9:30am-5:30pm ET (Mon-Fri).
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.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Andrew Jung can be reached on (571) 270-3779. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/C.J.W./Examiner, Art Unit 2175
/ANDREW J JUNG/Supervisory Patent Examiner, Art Unit 2175