Prosecution Insights
Last updated: July 17, 2026
Application No. 18/244,206

VALUE PROFILING ON ACCELERATORS

Non-Final OA §103
Filed
Sep 08, 2023
Examiner
PAN, HANG
Art Unit
2193
Tech Center
2100 — Computer Architecture & Software
Assignee
NVIDIA Corporation
OA Round
3 (Non-Final)
74%
Grant Probability
Favorable
3-4
OA Rounds
5m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 74% — above average
74%
Career Allowance Rate
477 granted / 640 resolved
+19.5% vs TC avg
Strong +26% interview lift
Without
With
+25.5%
Interview Lift
resolved cases with interview
Typical timeline
3y 3m
Avg Prosecution
22 currently pending
Career history
671
Total Applications
across all art units

Statute-Specific Performance

§101
3.4%
-36.6% vs TC avg
§103
91.9%
+51.9% vs TC avg
§102
2.2%
-37.8% vs TC avg
§112
1.4%
-38.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 640 resolved cases

Office Action

§103
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 . This office action is in response to applicant’s RCE filed on 02/25/2026. Claims 1-20 are pending and examined. Response to Arguments Per 103 rejection, applicant’s arguments filed on 02/25/2026 have been fully considered. However, the claims are rejected under new grounds of rejection with new references applied. The examiner is available for a phone interview with applicant. 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, 5-8, 13-15 and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Goldman et al. (US PGPUB 2019/0139183) hereinafter Goldman, in view of Pizlo et al. (US PGPUB 2014/0047420) hereinafter Pizlo. Per claim 1, Goldman discloses a central processing unit (CPU) comprising: one or more CPU circuits to cause variable value profiling code to be inserted into one or more accelerator software programs, during compilation by one or more compilers, in order to profile one or more values within the one or more accelerator software programs when performed by one or more accelerators (Fig. 10; paragraphs [0014][0023]; a processor (CPU) performs instrumentation, GT-Pin instrumentation may operate to inject instructions into the assembly code of binaries as it is compiled (i.e. a module performing code instrumentation during compilation time); a GPU (accelerator) executes the instrumented program code; the instrumented code may be configured to profile properties of data in the program code). While Goldman discloses the instrumented code may be configured to profile properties of data in the program code during execution in a GPU, Goldman does not explicitly teach profiling one or more variable values, wherein the variable value profiling code causes one or more arrays to be generated to store the one or more variable values and an occurrence count corresponding to the one or more variable value. However, Pizlo suggests the above (paragraphs [0010][0034][0065]; an executable code compiled from a source code may include profile instructions, the executable code may be executed for accesses to runtime values of a variable, each value may be stored in a storage location via the profile instructions; runtime values are saved into value buckets (arrays); the profiled information also includes occurrence number for a variable value). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman and Pizlo to profile and store variable values and occurrence count for the variable values in an array, which is useful information for user in program diagnosis and debugging. Per claim 5, Goldman in view of Pizlo further suggests recording the one or more variable values in a table and stored in a device memory of the one or more accelerators (Pizlo; paragraphs [0010][0034][0065]; runtime values are saved into value buckets (table) in a storage location; Goldman, paragraph [0037]; a GPU executes a program in its memory). Per claim 6, Goldman further suggests recording data properties in a data structure and copying the data structure from a device memory of the one or more accelerators to a host memory of the CPU in response to the CPU performing a memory copy operation (paragraph [0028]; the binary instrumentation module (running in GPU) may provide the generated profiling data to the profiling application (running in CPU) for further processing and analysis, the processed results may then be presented to the user via a graphical user interface). Pizlo further discloses storing variable profile information in a table (paragraphs [0010][0034][0065]; runtime values are saved into value buckets (table) in a storage location). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo to store the profiling information in a table data structure, which allows easy data query and retrieval. Per claim 7, Goldman further discloses using the one or more variable values to perform optimizations on the one or more accelerator software programs (paragraphs [0021][0038]; the collected profiling information is used to optimize the program code). Claims 8 and 14 recite similar limitations as claims 1 and 7. Thus, claims 8 and 14 are rejected under similar rationales as claims 1 and 7. Claims 15 and 20 recite similar limitations as claims 1 and 7. Thus, claims 15 and 20 are rejected under similar rationales as claims 1 and 7. Per claim 13, Goldman further discloses wherein the one or more accelerators are one or more graphics processing units (GPUs) (claim 1; GPU). Per claim 18, Pizlo further suggests recording the one or more variable values and an occurrence count corresponding to the one or more variable values in a table as consecutive elements (paragraphs [0010][0034][0065]; an executable code compiled from a source code may include profile instructions, the executable code may be executed for accesses to runtime values of a variable, each value may be stored in a storage location via the profile instructions; runtime values are saved into value buckets (stored as consecutive elements); the profiled information also includes occurrence number for a variable value). Per claim 19, Pizlo further discloses wherein the variable value profiling code contains counters in order to record the one or more variable values (paragraphs [0010][0034][0065]; profiled runtime values are saved into value buckets; the profiled information also includes occurrence number for a variable value). Claims 2, 9 and 16 are rejected under 35 U.S.C. 103 as being unpatentable over Goldman, in view of Pizlo, in view of Jahre et al. (US PGPUB 2025/0013471) hereinafter Jahre. Per claim 2, Pizlo discloses wherein the one or more arrays record the one or more variable values in extended indices (paragraphs [0010][0034][0065]; profiled runtime values are saved into value buckets). Pizlo does not explicitly teach the extended indices are initialized to zero. However, this is a common practice in the field of the art, as evidenced in Jahre (paragraph [0109], the profiling software may use a data structure in which a zero-initialized counter to profile). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo and Jahre to initialize indices to zero before storing profiled variable data, because uninitialized indices may contain wrong profiled data. Claims 9 and 16 are rejected under similar rationales as claim 2. Claims 3-4, 10-12 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Goldman, in view of Pizlo, in view of Lobo et al. (US patent 7784042) hereinafter Lobo. Per claim 3, Goldman does not explicitly teach storing one or more previous variable values from one or more prior profiles in a memory of the CPU. However, Lobo suggests the above (column 6, line 1-13; line 32-60; previous execution profiling information is stored in a pervious profile file for future use). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo and Lobo to store the profiling information in a profile file for future use (loading in memory for analysis), as such profile information is useful to a developer to optimize the program. Per claim 4, Goldman does not explicitly teach combining the one or more variable values with one or more previously stored variable values of one or more prior profiles. However, Lobo suggests the above (column 6, line 1-13; “When the execution of the train run is completed, the profile information may be exported and stored in a profile file for future use”; i.e. after each train run, the profile information is exported and stored in a profile file, it would have been obvious to utilize a single profile file to store multiple train runs, the profile information of a second run is combined with previously stored profile information of a first run). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo and Lobo to store the profiling information of multiple runs in a profile file for future use (loading in memory for analysis), for more efficient data storage purpose. Claim 10 is rejected under similar rationales as claim 4. Per claim 11, Goldman does not explicitly teach recording the one or more variable values in a table if the one or more variable values are not already present in the table. However, Lobo suggests the above (column 6, line 1-13; line 32-60; the execution profiling information includes a count for each data variable in a program being profiled; the execution profiling information is stored in a profile file; column 5, line 1-10; using a table to store variable information; i.e. each variable is represented in the table and is associated with a count value; after an occurrence of a variable in execution, if the variable is not in the table, it is added, if it is already in the table, its count is incremented). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo and Lobo to record an occurrence count for each data variable in a program and store the profiling information in a profile file for future use, as such profile information is useful to a developer to optimize the program. Per claim 12, Goldman does not explicitly teach updating an occurrence count corresponding to the one or more variable values if the one or more variable values is already present in a table. However, Lobo suggests the above (column 6, line 1-13; line 32-60; the execution profiling information includes a count for each data variable in a program being profiled; the execution profiling information is stored in a profile file; column 5, line 1-10; using a table to store variable information; i.e. each variable is represented in the table and is associated with a count value; after an occurrence of a variable in execution, if the variable is not in the table, it is added, if it is already in the table, its count is incremented). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo and Lobo to record an occurrence count for each data variable in a program and store the profiling information in a profile file for future use, as such profile information is useful to a developer to optimize the program. Per claim 17, Goldman does not explicitly teach storing the one or more variable values in a table, and outputting the table to a file. However, Lobo suggests the above (column 6, line 1-13; the execution profiling information is stored in memory and exported to a profile file for future use; column 5, line 1-10; using a table to store variable information). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Goldman, Pizlo and Lobo to record profiled variable information in a table and exported the table to a file, as such profile information is useful to a developer to optimize the program. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to HANG PAN whose telephone number is (571)270-7667. The examiner can normally be reached 9 AM to 5 PM. 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, Chat Do can be reached at 571-272-3721. 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. /HANG PAN/Primary Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Show 5 earlier events
Nov 13, 2025
Response Filed
Nov 26, 2025
Final Rejection mailed — §103
Jan 09, 2026
Interview Requested
Feb 03, 2026
Examiner Interview Summary
Feb 03, 2026
Applicant Interview (Telephonic)
Feb 25, 2026
Request for Continued Examination
Mar 09, 2026
Response after Non-Final Action
Jun 17, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12670015
Detached Global Scheduler
4y 5m to grant Granted Jun 30, 2026
Patent 12669983
CODE GENERATION METHOD AND APPARATUS, COMPUTER DEVICE, AND STORAGE MEDIUM
1y 4m to grant Granted Jun 30, 2026
Patent 12664070
ROOT CAUSE ANALYSIS SYSTEM AND ROOT CAUSE ANALYSIS METHOD IN HETEROGENEOUS VIRTUALIZATION ENVIRONMENT
2y 7m to grant Granted Jun 23, 2026
Patent 12639200
AUTOMATED TRACKING OF CONSISTENT SOFTWARE TEST FAILURES
2y 4m to grant Granted May 26, 2026
Patent 12639192
AN INTEGRATED AI-DRIVEN SYSTEM FOR AUTOMATING IT AND CYBERSECURITY OPERATIONS
9m to grant Granted May 26, 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
74%
Grant Probability
99%
With Interview (+25.5%)
3y 3m (~5m remaining)
Median Time to Grant
High
PTA Risk
Based on 640 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