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 Office Action is responsive to the Amendment filed June 19, 2026.
This application has been examined. Claims 1, 11 and 20 have been amended. Claims 2-10, 12-19 have not been amended and stand as previously presented. Claims 1-20 are pending in the application, and Claims 1-20 stand rejected.
Specification
The title has been amended and now reads 'Role-Based CPU Power Profiles for Achieving Energy Savings in a Network.' The Examiner finds the amended title sufficiently descriptive of the claimed invention. The objection to the title is hereby withdrawn.
Claim Rejections – 35 U.S.C. § 112(b)
4. Claims 1, 11, and 20 are rejected under 35 U.S.C. § 112(b) as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor regards as the invention.
Specifically, each of independent claims 1, 11, and 20 recites a preamble-level step of 'configure [/configuring/causes the one or more processing devices to configure] each node of the plurality of nodes according to the associated power profile by:' - indicating that what follows defines the method by which each node of the plurality of nodes is configured. However, the nested steps that follow define only the configuration of the first node (i.e., 'determining that a first node … has a first role' and 'in response … configuring the first node according to a first power profile'). No steps are recited for configuring the second or any other node of the plurality. The claim therefore fails to particularly point out and distinctly claim how the system/method configures 'each node of the plurality,' as the 'configure each node … by:' language promises but the subsequent limitations do not fulfill. A POSITA would not understand with reasonable certainty whether the 'configure each node … by:' language is satisfied by only configuring the first node, or whether configuring only one node of a plurality constitutes configuring 'each node”.
Applicant is invited to amend the independent claims to clarify the scope of the 'configure each node' limitation, for example by specifying that 'configuring each node' encompasses at least the described first-node configuration (which could be performed iteratively for each node), or by adding parallel steps for at least a second node.
Claim Rejections - 35 USC § 103
5. 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.
6. Claims 1-20 are rejected under 35 U.S.C. § 103 as being unpatentable over Larson et al. (US 9,471,137 B2; hereinafter 'Larson') in view of Jiang et al. (US 11,258,661 B2; hereinafter 'Jiang').
In order to expedite and avoid piecemeal prosecution, the following rejection is made to the extent that the claims are understood, by considering those elements which are understood and interpreting their function in a manner which is consistent with the recited goals of the claims, and then applying the best available art.
The examiner relies on the entire teachings of Larson and Jiang references; the applicant should carefully consider the entire teachings of the above-mentioned references to better understand the examiner’s position.
In regard to claim 1, Larson discloses a system comprising: a computing device including one or more processing devices and one or more memory devices operably coupled to the one or more processing devices, the one or more memory devices storing executable code that, when executed by the one or more processing devices (as shown in Fig. 1, which is reproduced below for ease of reference and convenience, Larson discloses an HA system 100 comprising an HA controller 102 (a computing device including one or more processors and memory) that executes power saving controller 104 code. See FIG. 1; col. 6:1-20; paras. [0012]-[0014]),
PNG
media_image1.png
426
757
media_image1.png
Greyscale
causes the one or more processing devices to:
receive a data center [template] defining a plurality of nodes, each node having an associated role and power profile (in Larson, does not use the phrase 'data center template,' but discloses redundant components 106 - a configuration data structure specifying the plurality of nodes (node 120 / primary 128 and node 124 / standby 130) with their assigned roles and associated power settings. See FIG. 1; FIG. 2; col. 4: ('redundant components 106 includes a configuration of the redundant components within HA system 100 at the component level of granularity')); and configure each node of the plurality of nodes according to the associated power profile (in Larson, further discloses configuring each node of the plurality of nodes according to the associated power profile: the HA controller 102 / power saving controller 104 selectively sets the power state of each type of redundant component on a standby-role node according to HA number bit settings that specify per-component power profiles. See col. 4-6; FIG. 4 (HA interface table 110 mapping each redundant component type to a power setting); FIG. 7-8); by
determine that a first node in a computing environment has a first role (in Larson, discloses determining that a first node in a computing environment has a first role: the HA controller 102 determines that node 124 has the standby role (standby 130) and that node 120 has the primary role (primary 128). See FIG. 1; col. 4-6: ('HA controller 102 may maintain each node designated as standby 130 in a powered-on state, even if in a lower power state, waiting for a node marked as primary 128 to fail'); and
in response to determining that the first node the first role, configure the first node according to a first power profile maintaining one or more first processing devices of the first node in a first power consumption state (in Larson, discloses that, in response to determining that the first node has the first role, configuring the first node according to a first power profile maintaining one or more first processing devices of the first node in a first power consumption state: in response to determining that a node has the standby role, the HA controller 102 / power saving controller 104 configures that standby node according to a role-based power setting, reducing CPU core frequency via FSP/TPMD 432 (FIG. 12; col. 9-11) and selectively powering off redundant FSP, BPC, VIOS, HMC, and mirrored disk components (FIG. 4; FIG. 8; paras. Col. 10-11), thereby maintaining the standby node's processing devices in a lower power consumption state (e.g., reduced core frequency = lower P/C-state equivalent). See FIG. 1; FIG. 4; FIG. 12; col. 4-5). Larson does not explicitly disclose receiving a 'data center template defining a plurality of nodes, each node having an associated role and power profile' as a unified template construct. While Larson's redundant components 106 configuration implicitly defines nodes and their role-based power settings, Larson does not frame this as a declarative template that defines both a role and a power profile for each of a plurality of nodes in a data center. In the same field of endeavor, Jiang teaches receiving a 'data center template defining a plurality of nodes, each node having an associated role and power profile' as a unified template construct (as shown in Fig. 2, which is reproduced below for ease of reference and convenience, Jiang explicitly discloses a data-center-level configuration data structure (fabric configuration data 216; FIG. 8 mapping table; node profile data structures 412-416, FIG. 4C) that defines a plurality of nodes, assigns each node a role from a taxonomy of data-center node roles (compute, controller/master, storage, service), and maps each role to associated configuration parameters. This constitutes the claimed 'data center template defining a plurality of nodes, each node having an associated role and [associated] power profile [i.e., configuration profile]’).
PNG
media_image2.png
580
441
media_image2.png
Greyscale
PNG
media_image3.png
519
236
media_image3.png
Greyscale
It would have been obvious to a person of ordinary skill in the art (POSITA) to combine the role-based power management system of Larson with the data-center template/role-taxonomy approach of Jiang. Both references operate in the same technical field - data center computing infrastructure management. Larson is explicitly concerned with power savings in multi-node HA clusters and discloses that the power configuration is driven by role (primary vs. standby). Jiang is explicitly concerned with systematically configuring large numbers of data center servers by assigning roles and applying per-role configuration templates, which is the conventional approach for managing data centers at scale. A POSITA would recognize that Larson's role-based power settings are precisely the type of per-role configuration parameter that Jiang's template/mapping approach is designed to capture and propagate - combining them yields a system that receives a data center template (Jiang) associating each node with a role and a power profile, then configures each node's power state according to that role (Larson). The motivation to combine is further supplied by the known problem of scaling power management across large numbers of heterogeneous data center nodes, where a template-driven approach (Jiang) provides systematic, scalable role-based configuration that Larson's manual/per-cluster setting lacks. See KSR Int'l Co. v. Teleflex Inc., 550 U.S. 398 (2007) (obvious to combine known elements using known methods to yield predictable results).
In regard to claims 2, 12, Larson teaches wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to: determine that a second node in the computing environment has a second role different from the first role and in response to determining that the second node has the second role, configure the second node according to a second power profile maintaining one or more second processing devices of the second node in a second power consumption state that is different from the first power consumption state (in Larson explicitly discloses mutual primary/standby role designation where multiple nodes may be designated primary and multiple nodes may be designated standby, each configured to a different power state. See col. 4-5 ('multiple nodes may be designated as primary 128 and multiple nodes may be designated as standby 130'); FIG. 1. The HA controller 102 configures the primary node to full power and the standby node to a lower power state - two different roles, two different power consumption states).
In regard to claims 3, 13, Larson teaches wherein the first power profile invokes operation of one or more processing devices in a first cstate and the second power profile invokes operation of the one or more processing devices in a second cstate (in Larson discloses that the FSP/TPMD 432 controls processor core frequency (a proxy for P/C-state) for standby components. See FIG. 12; col. 10-11: (FSP/TPMD lowers core frequencies). Simlai (already of record; US 2025/0123673), while withdrawn as a primary § 102 reference, may be used as additional evidence that P/C-states (including C-states) are the conventional mechanism for setting CPU power consumption states in server environments, rendering the specific C-state implementation obvious to a person of ordinary skill. See Simlai, ¶ [0021]-[0025].
In regard to claim 4, Larson teaches wherein the first cstate is C0 and the second cstate is a C1 (in Larson discloses adjusting core frequencies between full performance (primary node) and reduced frequency (standby node), which maps to C0 vs. a halted/reduced-power state. See FIG. 12; col. 3-5). A person of ordinary skill would recognize that maintaining active processing at full frequency corresponds to C0 and reducing to a halt or near-halt state corresponds to C1 per the ACPI standard, making the specific C0/C1 designation obvious.
In regard to claims 5, 14, Larson teaches wherein the first role is as an active node and the second role is as a backup node (in Larson expressly discloses a 'node marked as primary 128' and a 'node designated as standby 130,' which are directly synonymous with 'active node' and 'backup node.' See FIG. 1; col. 3-5: ('a failover strategy may include an idle standby strategy where the node marked as primary 128 processes all workloads while the node marked as standby 130 is idle').
In regard to claim 6, Jiang teaches the first role is a worker node and the second role is a master node (in Jiang discloses assigning roles including 'Kubernetes Node' (worker node) and 'Kubernetes Master' (master node) to servers in a data center, and configuring each server according to its assigned role. See col. 13-15: ('Examples of such roles include “Contrail vRouter,” “Kubernetes Node,” “Nova Compute,” and “ESXi”' for the compute role; 'Kubernetes Master' for the controller role); FIG. 10C-10D). A person of ordinary skill would recognize that 'worker node' and 'master node' are the standard Kubernetes role designations corresponding to Jiang's Kubernetes Node / Kubernetes Master. The combination of Larson's role-based power configuration with Jiang's worker/master node role taxonomy renders this claim obvious.
In regard to claims 7, 16, Jiang teaches wherein the first role is as a storage node and the second role is as a compute node (in Jiang discloses assigning a 'compute' role and a 'storage' role to servers. See col. 4-5: ('a data center comprises a facility that hosts applications and services ... including networking and storage systems'); FIG. 8 (storage, storage management VLAN labels mapped to roles); col. 11-12 (assigning compute roles vs. other roles including service/orchestrator roles that encompass storage function). The combination of Larson's role-based power configuration with Jiang's role taxonomy including storage and compute roles renders this claim obvious.
In regard to claims 8, 17, Larson teaches wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to: change the first node to a second role; and in response to changing the first node to the second role, cause the first node to maintain the one or more first processing devices in a second power consumption state that is different from the first power consumption state (in Larson discloses that the HA controller 102 can dynamically change a node's role designation (e.g., in a mutual takeover strategy where each node is designated primary for some workloads and standby for others) and in response adjusts the power state of that node's components. See col. 5-6: ('a failover strategy may include a mutual takeover strategy where there are multiple nodes ... each node is designated as primary 128 for handling a selection of workloads and is also designated as standby 130 for another node'); FIG. 8 (power saving controller dynamically turns components on/off based on current activity/HA number). When conditions change causing a role change, the power saving controller reconfigures the power state accordingly.
In regard to claims 9, 18, Larson teaches wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to, in response to changing the first node to the second role: output an instruction to instantiate a workload on the first node along with an annotation instructing the first node to maintain the one or more first processing devices in the second power consumption state (in Larson discloses that on a failover (role change from standby to primary), the HA controller 102 moves the resource group / workload to the standby node (now acting as primary), causing the node to instantiate the workload. See col. 4-5: ('HA controller detects when conditions in the cluster change and moves the resource group for a workload to a standby node'). The FSP/TPMD restores full processor frequency (an annotation/instruction for the power state) when activity changes to HA-critical. See FIG. 12; col. 10-11). Jiang further discloses outputting an instruction (an Ansible script / provisioning instruction per role) that causes a server to instantiate a workload with role-specific configuration parameters. See col. 16-17: ('the provisional SDN controller 142 can cause an Ansible script to be executed that causes the OSP 222 to provision the operating system and software for the server based on the role assigned to the server').
In regard to claims 10, 19, Jiang teaches wherein the instruction is a helm chart (in Jiang discloses JSON, YAML, and CSV configuration formats for role-based provisioning instructions. See para. [0041] ('Example formats for the data structure include a comma separated variables (CSV) or YAML Ain't Markup Language (YAML)'). A Helm chart is a well-known YAML-based Kubernetes workload deployment template; a person of ordinary skill in the Kubernetes/container orchestration art (which Jiang explicitly addresses, see col. 15-16) would find it obvious to use a Helm chart as the instruction format for instantiating a Kubernetes-based workload, as Helm is the standard Kubernetes packaging/deployment tool).
Claim 11 (method) and Claim 20 (non-transitory machine-readable medium) recite the same operative limitations as system claim 1. The change in claim format from system to CRM or method does not confer patentability where the underlying operations are identical to those taught by the applied references. See MPEP § 2114; In re Bernhart, 417 F.2d 1395 (CCPA 1969). The element-by-element mapping set forth for claim 1 applies with equal force to claims 11 and 20.
Claims 12-19 (method) recite the same operative limitations as system claims 2-3, 5-10 respectively. The change in claim format from system to method does not confer patentability where the underlying operations are identical to those taught by the applied references. See MPEP § 2114; In re Bernhart, 417 F.2d 1395 (CCPA 1969). The element-by-element mapping set forth for claims 2-3, 5-10 applies with equal force to claims 12-19.
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.
Withdrawal of previous rejection
7. The rejection of claims 1-20 under 35 U.S.C. § 102(a)(2) as anticipated by Simlai et al. (US 2025/0123673) is hereby WITHDRAWN. Upon reconsideration in light of the amendments and remarks submitted by Applicant on June 19, 2026, the Examiner finds that Simlai discloses a system for setting CPU power states per application/workload at the intra-server level (associating power profiles with CPU groups based on workload type), but does not disclose: (1) a plurality of computing environment nodes, each having an associated role; (2) configuring a node according to a role-based power profile that depends on the node's role (e.g., active/backup, worker/master, compute/storage); or (3) a data center template defining a plurality of nodes each with an associated role and power profile. Applicant's traversal on the role-of-a-node limitation is well-taken. The rejection is withdrawn.
However, upon further consideration, a new ground of rejection is made in view of Larson and Jiang.
Conclusion
8. All claims are rejected.
9. 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.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Andrew Jung can be reached at (571) 270-3779. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
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