Prosecution Insights
Last updated: October 26, 2026
Application No. 18/593,720

APPLICATION PROGRAMMING INTERFACE TO INDICATE MULTIPROCESSOR GROUPS

Final Rejection §103
Filed
Mar 01, 2024
Priority
Jan 25, 2024 — provisional 63/625,278
Examiner
CHU JOY, JORGE A
Art Unit
2195
Tech Center
2100 — Computer Architecture & Software
Assignee
NVIDIA Corporation
OA Round
2 (Final)
77%
Grant Probability
Favorable
3-4
OA Rounds
4m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 77% — above average
77%
Career Allowance Rate
332 granted / 433 resolved
+21.7% vs TC avg
Strong +36% interview lift
Without
With
+36.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 0m
Avg Prosecution
26 currently pending
Career history
480
Total Applications
across all art units

Statute-Specific Performance

§101
9.9%
-30.1% vs TC avg
§103
56.5%
+16.5% vs TC avg
§102
2.8%
-37.2% vs TC avg
§112
20.9%
-19.1% vs TC avg
Black line = Tech Center average estimate • Based on career data from 433 resolved cases

Office Action

§103
DETAILED ACTION Claims 1-20 are pending. 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 . 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-4, 6-11, 13-18 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Prabhakaran et al. (US 2019/0208009 A1). Regarding claim 1, Prabhakaran teaches the invention substantially as claimed including one or more processors ([0067] System 600 includes processor 610), comprising: circuitry to, in response to an application programming interface (API) call, generate a data structure indicating one or more resources of one or more processors ([0036] ARS unit 354 includes a processor or other hardware (e.g., programmable control logic, FPGA, x86 core, ARM compatible core) that can execute the service discovery agent…Execution of service discovery agent causes querying of resource list 356 for available resources that meet SLA or other performance requirements of the request. Resource list 356 can maintain a list of all available resources in compute resources 310 and 320.; [0040-41]; [0048] This information includes, but is not limited to, one or more of:… their hardware and software specifications sufficient for making routing/load-balancing decisions (e.g., compute nodes used, software stack used, and so forth), the corresponding SLA interfaces and their utilization, average service times, queue depths, and other telemetry as is meaningful for a resource type.; [0049]; [0062] Service discovery agent 440 uses interface 444 to provide the workload type and requirements 442 to service list 450 using a query or a write. Interface 444 can be a JSON interface, POSIX API, remote procedure call (RPC), or other interfaces. Service list 450 provides a resource identifier or identifiers that can perform the workload and satisfy its requirements as a result. The result can be written to a service request tracker (e.g., tracker 436 of FIG. 4B). The executable code segment, after authenticated, can be permitted to execute on ARS unit 354), wherein the data structure is to be used to generate one or more references to resources usable to perform one or more software workloads ([0058] The workload parameters can be: AI inferences (object detection), augment frames with inferred references, and generate image frame back to user with annotations [0062] Service list 450 provides a resource identifier or identifiers that can perform the workload and satisfy its requirements as a result.). Prabhakaran does not explicitly teach generate a data structure. However, Prabhakaran as cited does teach a resource list that maintain a list of all available resources and a service list which is created/generated from the resource list. The service list is tailored to the requirements and type of the workload. As such, one of ordinary skill in the art would have understood Prabhakaran’s creation/generation of a service list as the limitation above. Accordingly, Prabhakaran reasonably teaches the limitation as claimed. Regarding claim 2, Prabhakaran teaches wherein the API call comprises one or more parameters indicating a memory location usable to store the data structure ([0060] Tracker 436 can be stored as a table in a memory. Tracker 436 can include a service request identifier (ID), a workload request, selected resources that are provided by an ARS unit from execution of the service discovery agent associated with the service request, a result from use of the selected resource or its alternative, and a handle associated with a service discovery agent provided with the service request.). Regarding claim 3, Prabhakaran teaches wherein the API call comprises one or more parameters indicating a list of the one or more resources to be indicated by the data structure, wherein the list includes a portion of the resources referenced to be usable by the one or more processors to perform the one or more software workloads ([0062] Service discovery agent 440 uses interface 444 to provide the workload type and requirements 442 to service list 450 using a query or a write. Interface 444 can be a JSON interface, POSIX API, remote procedure call (RPC), or other interfaces. Service list 450 provides a resource identifier or identifiers that can perform the workload and satisfy its requirements as a result. The result can be written to a service request tracker (e.g., tracker 436 of FIG. 4B). [0063] Workload type identifier can identify a type of workload that can be executed. For example, a workload type identifier can identify use of an AI inference engine, a database search, storage, database query, and so forth. Field latency can specify an amount of time to perform a type of workload. Field cost can specify a monetary cost and/or a power consumption cost. Field service application can specify a type or specific name of algorithm to be used. If a workload requirement specifies a type of algorithm to use, this field can be used to select acceptable resources. Field resource identifier can specify the resource identifier for the parameters, such that this identifier can be a candidate resource identifier for selection by the service discovery agent and, if selected, provided to a user request manager. Note that for a workload type identifier, there can be multiple rows or resources that can perform the workload and the service discovery agent can select the resource based on workload requirements and preferences.). Regarding claim 4, Prabhakaran teaches wherein the API call comprises one or more parameters indicating a number of resources to be indicated by the data structure, wherein at least one of the number of resources is referenced to be usable by the one or more processors to perform the one or more software workloads ([0062-63]). Regarding claim 6, Prabhakaran teaches wherein the data structure comprises a resource descriptor describing a context of the one or more processors ([0055] In a case where a computing resource identifier is provided, the load balancer can choose among available resources with the same or better performance criteria and cost criteria so that the specific identifier compute resource does not need to be used or selected and the load balancer can balance use of resources. The computing platform can include a variety of hardware and software component include: central processing units, AI inference acceleration, image processing, programmable control logic, FPGAs, graphics processing units (GPUs), general purpose GPUs, fixed function operations, accelerated look-up, and so forth.). Regarding claim 7, Prabhakaran teaches wherein the data structure includes a resource descriptor describing a sub-context of the one or more processors ([0063] FIG. 4D depicts an example service list format. The service list can include a variety of fields including but not limited to: workload type identifier, latency, cost, algorithm used, and so forth. Workload type identifier can identify a type of workload that can be executed. For example, a workload type identifier can identify use of an AI inference engine, a database search, storage, database query, and so forth. Field latency can specify an amount of time to perform a type of workload. Field cost can specify a monetary cost and/or a power consumption cost. Field service application can specify a type or specific name of algorithm to be used. If a workload requirement specifies a type of algorithm to use, this field can be used to select acceptable resources. Field resource identifier can specify the resource identifier for the parameters, such that this identifier can be a candidate resource identifier for selection by the service discovery agent and, if selected, provided to a user request manager. Note that for a workload type identifier, there can be multiple rows or resources that can perform the workload and the service discovery agent can select the resource based on workload requirements and preferences.). Regarding claims 8-11, 13-14, they are method claims having similar limitations as claims 1-4 and 6-7 above. Therefore, they are rejected under the same rationale above. Claim 15 is a system type claim having similar limitations as claim 1 above. Therefore, it is rejected under the same rationale above. The additional limitations one or more processors and memory storing executable instructions that, if performed by the one or more processors are taught by Prabhakaran in at least [0069] “Memory subsystem 620 represents the main memory of system 600 and provides storage for code to be executed by processor 610" Regarding claims 16-18 and 20, they are system claims having similar limitations as claims 2-4 and 6 above. Therefore, they are rejected under the same rationale above. Claims 5, 12, and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Prabhakaran et al. (US 2019/0208009 A1). Regarding claim 5, Prabhakaran does not teach but Lindholm teaches wherein the one or more resources include one or more streaming multiprocessors (SMs) ([0073] As described above, the work distribution unit 225 dispatches tasks for execution on the GPCs 250 of the PPU 200. The tasks are allocated to a particular TPC 320 within a GPC 250 and, if the task is associated with a shader program, the task may be allocated to an SM 340.). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the teachings of Lindholm with the teachings of Prabhakaran to allocate shader tasks to an SM similar to the image processing tasks as taught by Prabhakaran in at least [0053]. The modification would have been motivated by the desire of performing a simple substitution of an accelerator for an SM to yield predictable results. Regarding claim 12, it is a method claim having similar limitations as claim 5 above. Therefore, they are rejected under the same rationale above. Regarding claim 19, it is a system claim having similar limitations as claim 5 above. Therefore, they are rejected under the same rationale above. Response to Arguments Applicant’s arguments with respect to claims 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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 JORGE A CHU JOY-DAVILA whose telephone number is (571)270-0692. The examiner can normally be reached Monday-Friday, 6:00am-5:00pm. 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, Aimee J Li can be reached at (571)272-4169. 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. /JORGE A CHU JOY-DAVILA/Primary Examiner, Art Unit 2195
Read full office action

Prosecution Timeline

Mar 01, 2024
Application Filed
May 15, 2024
Response after Non-Final Action
May 07, 2026
Non-Final Rejection mailed — §103
Aug 07, 2026
Response Filed
Oct 16, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12761955
USER INTERFACE BASED PAGE MIGRATION FOR PERFORMANCE ENHANCEMENT
4y 1m to grant Granted Oct 13, 2026
Patent 12761971
SYSTEM, METHOD, AND MEDIUM FOR ELASTIC ALLOCATION OF RESOURCES FOR DEEP LEARNING JOBS
2y 10m to grant Granted Oct 13, 2026
Patent 12748634
AUTOMATED KUBERNETES ADAPTATION THROUGH A DIGITAL TWIN
3y 3m to grant Granted Sep 29, 2026
Patent 12737206
DYNAMIC DEVICE VIRTUALIZATION FOR USE BY GUEST USER PROCESSES BASED ON OBSERVED BEHAVIORS OF NATIVE DEVICE DRIVERS
2y 8m to grant Granted Sep 15, 2026
Patent 12717631
ASSIGNING WORKLOADS TO PHYSICAL RESOURCES IN SPATIAL ARCHITECTURES
3y 6m to grant Granted Aug 25, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
77%
Grant Probability
99%
With Interview (+36.0%)
3y 0m (~4m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 433 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month