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 .
Detailed Action
This office action is in response to the listing of claims filed on February 21, 2025. Claims 1-13 are currently pending.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-13 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-25 of U.S. Patent No. 12,261,940. Although the claims at issue are not identical, they are not patentably distinct from each other because both sets of claims are substantially similar in their claimed approach to providing dynamic accelerator selection. These similarities are illustrated in the table below comparing an independent claim of the present application against one from the patent.
Present Application
Claim 1
Patent 12,261,940
Claim 1
A cloud service provider system for use in providing at least one service in association with at least one node via at least one network, the cloud service provider system comprising: resources that are configurable to comprise accelerator circuitry comprised in multiple accelerators in the at least one network, the multiple accelerators comprising one or more certain accelerators that are remote from the at least one node;
A cloud service provider system for use in providing at least one service in association with at least one node via at least one network, the cloud service provider system comprising:
accelerator circuitry comprised in multiple accelerators in the at least one network, the multiple accelerators comprising one or more certain accelerators that are remote from the at least one node;
and server circuitry configurable to dynamically assign and/or reassign, based upon (1) physical location information associated, at least in part, with the multiple accelerators, (2) current resource usage data, (3) resource utilization trend data, and (4) predicted future resource utilization data, at least one workload to and/or from at least one portion of the resources;
server circuitry configurable to dynamically assign and/or reassign for acceleration, at least in part, based upon physical location information of the multiple accelerators and telemetry data, at least one workload to and/or from at least one of the multiple accelerators;
…server circuitry configurable to dynamically assign and/or reassign for acceleration, at least in part, based upon physical location information of the multiple accelerators and telemetry data, at least one workload to and/or from at least one of the multiple accelerators;
…the server circuitry is configurable to dynamically allocate and/or dynamically deallocate, based upon current resource usage data, resource utilization trend data, and predicted future resource utilization data, at least one portion of the resources of the cloud service provider system for the execution, at least in part, of the at least one workload; and
wherein: the at least one workload is associated with the providing of the at least one service;
wherein: the at least one workload is associated with the providing of the at least one service;
execution of the at least one workload is to be associated with at least one container and/or virtual machine;
execution of the at least one workload is to be associated with at least one container and/or virtual machine;
and the current resource usage data, the resource utilization trend data, and the predicted future resource utilization data are to be generated based, at least in part, upon telemetry data associated with the at least one portion of the resources.
the server circuitry is configurable to generate the current resource usage data, the resource utilization trend data, and the predicted future resource utilization data based, at least in part, upon the telemetry data.
While the present claim recites dynamically assigning/reassigning based upon four attributes, the patented claim recites assigning/reassigning for acceleration and allocating/deallocating resources. Assigning and allocating are used interchangeably in the art. In addition, an accelerator is a type of resource when the network is providing a service using the accelerator(s). Therefore, it would have been obvious to one skilled in the art, before the effective filing date to have used assigning/reassigning interchangeably with allocating/reallocating and to have interpreted an accelerator as a resource, when providing a service using accelerators, to enable dynamic resource allocation.
Claims 2-13 are also rejected for being substantially similar to patented claims 2-25.
Claims 1-13 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-22 of U.S. Patent No. 11,888,967. Although the claims at issue are not identical, they are not patentably distinct from each other because both sets of claims are substantially similar in their claimed approach to providing dynamic accelerator selection. These similarities are illustrated in the table below comparing an independent claim of the present application against one from the patent.
Present Application
Claim 1
Patent 11,888,967
Claims 1 and 5
A cloud service provider system for use in providing at least one service in association with at least one node via at least one network, the cloud service provider system comprising: resources that are configurable to comprise accelerator circuitry comprised in multiple accelerators in the at least one network, the multiple accelerators comprising one or more certain accelerators that are remote from the at least one node;
One or more non-transitory machine-readable storage media comprising a plurality of instructions stored thereon that, when executed, causes a compute device to:
obtain network telemetry data to include physical location information for a plurality of accelerators; and
offload acceleration of a function to a remote accelerator included in the plurality of accelerators in response to a determination to offload acceleration of the function to the remote accelerator based on the network telemetry data.
and server circuitry configurable to dynamically assign and/or reassign, based upon (1) physical location information associated, at least in part, with the multiple accelerators, (2) current resource usage data, (3) resource utilization trend data, and (4) predicted future resource utilization data, at least one workload to and/or from at least one portion of the resources;
Claim 1: …obtain network telemetry data to include physical location information for a plurality of accelerators;
Claim 5: … determine a resource usage at an accelerator device that includes the remote accelerator, wherein the resource usage is indicative of a level of usage of resources at the accelerator device, wherein the determination to offload acceleration of the function to the remote accelerator is based on the network telemetry data and the resource usage of the accelerator device (i.e. predicted future resource utilization data).
wherein: the at least one workload is associated with the providing of the at least one service; execution of the at least one workload is to be associated with at least one container and/or virtual machine;
offload acceleration of a function (i.e. service) to a remote accelerator (i.e. vm is an inherent component of an accelerator)
and the current resource usage data, the resource utilization trend data, and the predicted future resource utilization data are to be generated based, at least in part, upon telemetry data associated with the at least one portion of the resources.
Claim 5: …wherein the determination to offload acceleration of the function to the remote accelerator is based on the network telemetry data and the resource usage of the accelerator device.
While the present claim predicting future resource utilization, the patent does not explicitly recite predicting. However, the patent does recite using telemetry data and resource usage data to determine to offload acceleration of a function. That is, a judgement is made whether to assign a function/service to an accelerator based on usage data and telemetry data. This determination/judgement is thus made to allocate (offload to) an accelerator if it is assumed/predicted based on telemetry and usage data, that an accelerator will be able to service the function. Therefore, it would have been obvious to one skilled in the art, before the effective filing date to have used a determination based on data (such as usage and telemetry data) as a form of prediction when allocating/offloading resources/accelerators to enable dynamic resource allocation.
Claims 2-13 are also rejected for being substantially similar to patented claims 2-22.
Claims 1-13 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-28 of U.S. Patent No. 11,416,309. Although the claims at issue are not identical, they are not patentably distinct from each other because both sets of claims are substantially similar in their claimed approach to providing dynamic accelerator selection. These similarities are illustrated in the table below comparing an independent claim of the present application against one from the patent.
Present Application
Claim 1
Patent 11,416,309
Claims 1 and 5
A cloud service provider system for use in providing at least one service in association with at least one node via at least one network, the cloud service provider system comprising: resources that are configurable to comprise accelerator circuitry comprised in multiple accelerators in the at least one network, the multiple accelerators comprising one or more certain accelerators that are remote from the at least one node;
A compute device comprising:
a compute engine;
a network interface controller to communicate with a remote accelerator over a network, wherein the network interface controller includes a local accelerator
and server circuitry configurable to dynamically assign and/or reassign, based upon (1) physical location information associated, at least in part, with the multiple accelerators, (2) current resource usage data, (3) resource utilization trend data, and (4) predicted future resource utilization data, at least one workload to and/or from at least one portion of the resources;
Claim 1: …wherein the network interface controller is to: receive a function to accelerate from the compute engine; obtain network telemetry data; determine whether to offload the function to the remote accelerator (physical location) based on the network telemetry data; and assign, in response to a determination not to offload the function to the remote accelerator (physical location), the function to the local accelerator.
Claim 5: … the network interface controller is further to determine a resource usage of the compute device, wherein the resource usage is indicative of a level of usage of resources at the compute device, and wherein to determine whether to offload the function comprises to determine whether to offload the function to the remote accelerator based on the network telemetry data and the resource usage of the compute device.
wherein: the at least one workload is associated with the providing of the at least one service; execution of the at least one workload is to be associated with at least one container and/or virtual machine;
Claim 1: …determine whether to offload the function (service) to the remote accelerator based on the network telemetry data; and
assign, in response to a determination not to offload the function to the remote accelerator, the function to the local accelerator.
and the current resource usage data, the resource utilization trend data, and the predicted future resource utilization data are to be generated based, at least in part, upon telemetry data associated with the at least one portion of the resources.
Claim 1: … determine whether to offload the function to the remote accelerator based on the network telemetry data; and assign, in response to a determination not to offload the function to the remote accelerator, the function to the local accelerator.
Claim 5: … the network interface controller is further to determine a resource usage of the compute device, wherein the resource usage is indicative of a level of usage of resources at the compute device, and wherein to determine whether to offload the function comprises to determine whether to offload the function to the remote accelerator based on the network telemetry data and the resource usage of the compute device.
While the present claim predicting future resource utilization, the patent does not explicitly recite predicting. However, the patent does recite using telemetry data and resource usage data to determine to offload acceleration of a function. That is, a judgement is made whether to assign a function/service to an accelerator based on usage data and telemetry data. This determination/judgement is thus made to allocate (offload to) an accelerator if it is assumed/predicted based on telemetry and usage data, that an accelerator will be able to service the function. Therefore, it would have been obvious to one skilled in the art, before the effective filing date to have used a determination based on data (such as usage and telemetry data) as a form of prediction when allocating/offloading resources/accelerators to enable dynamic resource allocation.
Claims 2-13 are also rejected for being substantially similar to patented claims 2-28.
Claim Rejections - 35 USC § 103
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.
Claims 1-13 are rejected under 35 U.S.C. 103 as being unpatentable over Kumar et al (US PGPub No: 2018/0027680) in view of Brech et al (US PGPub No: 2016/0285966), hereafter referred to as Kumar and Brech, respectively.
With regard to claims 1, 4, 7, and 10, Kumar teaches through Brech, a cloud service provider system for use in providing at least one service in association with at least one node via at least one network, the cloud service provider system comprising: resources that are configurable to comprise accelerator circuitry comprised in multiple accelerators in the at least one network, the multiple accelerators comprising one or more certain accelerators that are remote from the at least one node (Kumar teaches a data center using a pool of resources including accelerators; see paragraphs 29 and 32, Kumar. The accelerators can be remote from other remote accelerators/sleds and resources (i.e. remote accelerators and/or remote resources are nodes remote from the accelerators); see paragraph 50, Kumar);
and server circuitry configurable to dynamically assign and/or reassign, based upon (1) physical location information associated, at least in part, with the multiple accelerators (see below), (2) current resource usage data, (3) resource utilization trend data, and (4) predicted future resource utilization data, at least one workload to and/or from at least one portion of the resources (Kumar supports dynamically allocating (assigning) resources; see paragraph 25, Kumar. Allocation and reallocation is based on usage information of resource (i.e. (2) current resource usage data) and predictions are made for resource usage (i.e. (4) predicted future resource utilization data, at least one workload to/and or from at least one portion of the resource) for different types of workloads based on past resource usage (i.e. (3) resource utilization trend data); see paragraph 29, Kumar);
wherein: the at least one workload is associated with the providing of the at least one service; execution of the at least one workload is to be associated with at least one container and/or virtual machine (Kumar supports execution of various workloads with virtual machines/containers; see paragraph 84, Kumar);
and the current resource usage data, the resource utilization trend data, and the predicted future resource utilization data are to be generated based, at least in part, upon telemetry data associated with the at least one portion of the resources (Kumar teaches the data center receiving usage information for various resources (telemetry data associated with the at least one portion of the resources); see paragraph 29, Kumar. The allocation and reallocation is based on the above received usage information of resource and predictions are made for resource usage for different types of workloads based on past resource usage; see paragraph 29, Kumar).
While Kumar teaches an approach to allocating resources and teaches the accelerators being resources, Kumar does not explicitly cite the allocation being dependent upon the physical location of the accelerator. In the same field of endeavor, Brech also teaches an approach to allocating resources, including allocating abstracted resources; see paragraphs 4 and 62, Brech. The resource abstraction can be capability based and accelerators are one type of capability; see paragraphs 14, 64, and 73, Brech. Brech explains how resource scan be assigned dynamically according to demand, but users can specify location at a higher level of abstraction, such as country, state, or datacenter); see paragraph 27, Brech. Location and other attributes can be considered when mapping workloads; see paragraph 79, Brech.
By allowing for dynamic allocation of resources based on a varied attributes, the system is able to provide the workload needs while being agile and efficient; see paragraph 69, Brech. Therefore it would have been obvious to one skilled in the art, before the effective filing date, to have combined the teachings of Brech with those of Kumar, to allow for dynamic allocation of resources.
With regard to claims 2, 5, 8, and 11, Kumar teaches through Brech, the cloud service provider system wherein: the server circuitry is to determine accelerator failure based upon the telemetry data (Kumar teaches telemetry information providing failure prediction/prevention; see paragraph 48, Kumar).
With regard to claims 3, 6, 9, and 12, Kumar teaches through Brech, the cloud service provider system wherein: the at least one workload is associated with machine learning; and the accelerator circuitry comprises graphics processing unit hardware (Kumar supports machine learning; see paragraph 52, Kumar. Kumar also supports the accelerator being a gpu; see paragraph 39, Kumar).
With regards to claim 13, Kumar teaches through Brech, the at least one data center wherein: the at least one data center comprises multiple data centers (Kumar supports multiple data centers; see paragraph 92, Kumar).
The obviousness motivation applied to independent claims 1, 4, 7, and 10 are applicable to their respective dependent claims.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to AZIZUL Q CHOUDHURY whose telephone number is (571)272-3909. The examiner can normally be reached M-F.
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, EMMANUEL MOISE can be reached at (571) 272-3865. 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.
/AZIZUL CHOUDHURY/Primary Examiner, Art Unit 2455