Prosecution Insights
Last updated: April 19, 2026
Application No. 17/559,804

SIGNATURE-BASED AUTOMATIC OFFLOAD TO HARDWARE ACCELERATORS

Final Rejection §103
Filed
Dec 22, 2021
Examiner
SPANN, COURTNEY P
Art Unit
2183
Tech Center
2100 — Computer Architecture & Software
Assignee
Intel Corporation
OA Round
4 (Final)
80%
Grant Probability
Favorable
5-6
OA Rounds
2y 11m
To Grant
99%
With Interview

Examiner Intelligence

Grants 80% — above average
80%
Career Allow Rate
206 granted / 258 resolved
+24.8% vs TC avg
Strong +21% interview lift
Without
With
+21.3%
Interview Lift
resolved cases with interview
Typical timeline
2y 11m
Avg Prosecution
21 currently pending
Career history
279
Total Applications
across all art units

Statute-Specific Performance

§101
6.4%
-33.6% vs TC avg
§103
44.6%
+4.6% vs TC avg
§102
9.1%
-30.9% vs TC avg
§112
28.3%
-11.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 258 resolved cases

Office Action

§103
DETAILED ACTION Response to Amendment This action is responsive to the amendment filed on 2/3/2026. Claims 1-10 and 12-25 are pending and have been examined. Claims 1, 7, 13 and 19 have been amended. Claim 11 has been canceled. Claim 25 has been added. 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. Claim(s) 1-6 and 13-25 is/are rejected under 35 U.S.C. 103 as being unpatentable over Carey, PGPUB No. 2019/0187966, Maidee, USPAT No. 11,886,854 and further in view of NPL reference, “Offload Annotations: Bringing Heterogeneous Computing to Existing Libraries and Workloads” hereby referred to as Yuan. In regards to claim 1, Carey discloses A computing system (See Fig. 3, element 300 (see [0042])) comprising: a network controller (See Fig. 3, network interface (element 350) (see [0051])) a processor coupled to the network controller (See Fig. 3: wherein processor (element 310) is coupled to network interface (element 350)) and memory coupled to the processor (See Fig. 3: wherein memory (element 320) is coupled to processor (element 310)) the memory storing instructions which, when executed by the processor ([0047]) cause the computing system to: scan program code to detect a recognizable library code ([0082-0084 and 0087]: wherein a program is analyzed (scanned) to detect a recognizable software library (element 2410) which can be optimized by being implemented in an accelerator (See Figs. 3 and 6, paragraph [0043 and 0066] for further details on accelerator deployment tool that analyzes code to perform method of Fig. 25)) detecting a library signature for a library function that uniquely identifies the library function ([0082-0084]: wherein the detecting includes detecting a function call (library signature, e.g. call L1) for a library function that uniquely identifies the library function (See Figs. 24-25)) and upon detection of the library signature, perform one of: substitute the accelerator call for the library function associated with the library signature ([0083-0084 and 0087]: wherein upon detection of a function call (library signature) accelerator calls are substituted for the library functions (L1-LN) associated with the function calls (See Figs. 25 and 30)) or apply the accelerator tag to the library function associated with the library signature to indicate the accelerator call is to be substituted for the library function, wherein upon the accelerator tag being applied to the library function associated with the library signature, a subsequent scan is to be performed to detect the accelerator tag and substitute the accelerator call for the library function tagged with the accelerator tag. Carey does not disclose scan program code to detect an accelerator tag to indicate an accelerator call for the library function, the library signature for the library function being generated through applying a hashing algorithm to the library function; and upon detection of the accelerator tag, substitute the accelerator call for the library function tagged with the accelerator tag. Carey discloses scanning code to detect library function calls which uniquely identify library functions, and upon detection of the library function calls accelerator calls for the library functions are substituted. However, Carey does not disclose substituting accelerator calls based on library signatures which are generated by applying a hashing algorithm to the library functions. Maidee discloses a library signature for a library function that uniquely identifies the library function and the library signature for the library function being generated through applying a hashing algorithm to the library function (Column 6, lines 1-22 and Column 10, lines 64-67 to Column 11, lines 1-25: wherein a compute ID is a library signature which uniquely identifies a library function and is a hash of the function. Wherein the compute ID is used to replace a function with a hardware library function (See Figs. 1-2 and 7)) It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify library code of Carey to include library signatures as the library code of Maidee. It would have been obvious to one of ordinary skill in the art because it would have been the simple substitution of one known element (using library signatures generated by hashing library functions to substitute accelerator calls as taught in Maidee) for another (using generic library signatures to substitute accelerator calls as taught in Carey) to yield predictable results (using library signatures generated by hashing library functions to substitute accelerator calls to perform accelerator functions) (MPEP 2143, Example B). Furthermore, using the unique compute IDs indicates that a software function may have a functionally equivalent hardware accelerator function which can replace it and improve function processing performance (Maidee: Column 6, lines 18-21, Column 11, lines 65-67 and Column 18, lines 5-7). The combination of Carey and Maidee does not disclose scan program code to detect an accelerator tag to indicate an accelerator call for the library function and upon detection of the accelerator tag, substitute the accelerator call for the library function tagged with the accelerator tag. Carey and Maidee disclose detecting library signatures to software library functions and replacing library functions with accelerator calls to an accelerator as to improve run-time performance of the code. However, Carey and Maidee do not disclose replacing library functions with accelerator calls upon detecting an accelerator tag. Yuan discloses scan program code to detect an accelerator tag to indicate an accelerator call for the library function (See Abstract and section 1 on page 293: wherein a program is scanned during runtime to detect an offload annotation (accelerator tag) in a CPU function of a CPU library. Wherein the annotation corresponds to an accelerator (for example a GPU, see page 299 section 6 for other examples of accelerators) and specifies a corresponding accelerator function to be called in an accelerator library. Thus, the offload annotation can be considered an accelerator tag (See Fig. 1 and section 5 on pages 295 and 297 for further clarity)) upon detection of the accelerator tag, substitute the accelerator call for a library function tagged with the accelerator tag (See Abstract and section 1 on page 293: wherein upon detection of the offload annotation an accelerator function call is substituted for the CPU library function tagged with the offload annotation (See Fig. 1 and section 5 on pages 295 and 297 for further clarity)) It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify the system of Carey to use offload annotations in the CPU library to replace library functions with calls to accelerator functions as taught in Yuan. It would have been obvious to one of ordinary skill in the art because the offload annotations enable end users to use both CPU libraries and emerging accelerator libraries with few or no changes to code, allow automatic offloading of functions to an accelerator, page large datasets, transfer data across devices automatically, and manage allocations to minimize data transfer for better performance. (Yuan: Abstract, Introduction and Section 3 on pages 293-295) Claim 13 is similarly rejected on the same basis as claim 1 above as claim 13 is the computer readable storage medium corresponding to the system of claim 1. (See [0053] which discloses a non-transitory computer readable storage medium) Claim 19 is similarly rejected on the same basis as claim 1 above as claim 19 is the method corresponding to the system of claim 1. In regards to claim 2, the combination of Carey, Maidee and Yuan discloses The computing system of claim 1 (see rejection of claim 1 above) wherein to substitute the accelerator call comprises to provide a plurality of code segments (Carey [0043-0044 and 0066]: wherein to substitute accelerator calls the accelerators must first be programmed or imaged in order to provide the accelerators used to perform the functions. Thus, substituting the accelerator call comprises deploying accelerator images or HDL (code segments) to each corresponding accelerator (See Figs. 4, 6, 8, 11 for further clarity of accelerator deployment tools used to generate code segments used to image one or more accelerators)) each code segment optimized for a respective one of a plurality of hardware accelerators (Carey [0065-0066, 0082, 0087 and 0089]: wherein each accelerator image or HDL (code segments) is optimized for a respective one of a plurality of accelerators of a programmable device. For example, each accelerator can perform a different function such as compression, graphics, floating-point, etc.; thus, each code segment would be optimized for a different function for each respective hardware accelerator (See Figs. 4, 6, 8, 11 for further clarity of accelerator deployment tools used to generate code segments used to image one or more accelerators of a programmable device)) and wherein one of the plurality of code segments is to be selected based on availability of the respective one of the plurality of hardware accelerators. (Carey [0083 and 0088]: wherein an accelerator image or HDL (code segment) to implement an accelerator is selected based on availability of hardware accelerator resources of a programmable device) Claim 14 is similarly rejected on the same basis as claim 2 above as claim 14 is the computer readable storage medium corresponding to the system of claim 2. Claim 20 is similarly rejected on the same basis as claim 2 above as claim 20 is the method corresponding to the system of claim 2. In regards to claim 3, the combination of Carey, Maidee and Yuan discloses The computing system of claim 1 (see rejection of claim 1 above) wherein to substitute the accelerator call comprises to provide a code segment that interfaces with a plurality of hardware accelerators (Carey [0043-0047]: wherein accelerator deployment tool (code segment as it is software code executed by processor) interfaces with accelerators of programmable device (element 312) as to image and program/re-program accelerators which are used upon substituting accelerator calls(See Figs. 3-4 and 6)) and wherein one of the plurality of hardware accelerators is to be selected based on availability. (Carey [0083 and 0088]: wherein the selected hardware accelerator is selected based on being an available hardware accelerator resource) Claim 15 is similarly rejected on the same basis as claim 3 above as claim 15 is the computer readable storage medium corresponding to the system of claim 3. Claim 21 is similarly rejected on the same basis as claim 3 above as claim 21 is the method corresponding to the system of claim 3. In regards to claim 4, the combination of Carey, Maidee and Yuan discloses The computing system of claim 1 (see rejection of claim 1above) wherein the instructions, when executed, further cause the computing system to: provide an interface between the program code and one or more hardware accelerators (Carey [0043-0044 and Figs. 3-4]: wherein an accelerator deployment tool is an interface between the program code including code portions and one or more accelerators of a programmable device)and perform translation between the program code and a selected one of the one or more hardware accelerators (Carey [0060 and 0067]: wherein code portions of the program code are converted (translated) to code to be implemented on a selected one of hardware accelerators) wherein the selected one of the one or more hardware accelerators is to be selected based on availability. (Carey [0083 and 0088]: wherein the selected hardware accelerator is selected based on being an available hardware accelerator resource) Claim 16 is similarly rejected on the same basis as claim 4 above as claim 16 is the computer readable storage medium corresponding to the system of claim 4. Claim 22 is similarly rejected on the same basis as claim 4 above as claim 22 is the method corresponding to the system of claim 4. In regards to claim 5, the combination of Carey, Maidee and Yuan thus far discloses “The computing system of claim 4 (see rejection of claim 4 above) wherein the instructions, when executed, further cause the computing system (Carey: Fig. 3 and [0047])) The combination of Carey, Maidee and Yuan thus far does not disclose provide one or more services required by the selected one of the one or more hardware accelerators at run time. Yuan discloses provide one or more services required by the selected one of the one or more hardware accelerators at run time. (Pages 297-298: wherein data transfer services are provided as to provide data required to execute functions on the accelerator during runtime (See Sections 4.2 and 5) (note: examiner interprets this limitation similarly as in applicant’s specification which indicates that memory allocation is a service as discussed in paragraph [0390])) It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify the system of Carey, which performs functions in an accelerator to optimize run-time execution of code, to provide a service which would transfer data to an accelerator used to execute an offloaded function as disclosed in Yuan. It would have been obvious to one of ordinary skill in the art because the ability to automatically transfer values is necessary to ensure that values reside on the device (i.e., accelerator) where the operation will run (Yuan: pages 295 and 297). Claim 17 is similarly rejected on the same basis as claim 5 above as claim 17 is the computer readable storage medium corresponding to the system of claim 5. Claim 23 is similarly rejected on the same basis as claim 5 above as claim 23 is the method corresponding to the system of claim 5. In regards to claim 6, the combination of Carey, Maidee and Yuan discloses The computing system of claim 1 (see rejection of claim 1 above) wherein the instructions, when executed, further cause the computing system to determine whether to substitute the accelerator call based at least on one or more of performance, resources, environment, or task priority. (Carey [0068, 0071, 0083 and 0088]: wherein determining whether to substitute the accelerator call is based on run-time performance and available accelerator resources| Yuan, section 5 and page 298: wherein the accelerator function is substituted based on runtime performance calculations. For example, cost estimates are determined for running the function in CPU and on accelerator, and if accelerator has lower cost estimate the function is run on accelerator) Claim 18 is similarly rejected on the same basis as claim 6 above as claim 18 is the computer readable storage medium corresponding to the system of claim 6. (See [0053] which discloses a computer readable storage medium) Claim 24 is similarly rejected on the same basis as claim 6 above as claim 24 is the method corresponding to the system of claim 6. In regards to claim 25, the combination of Carey, Maidee and Yuan discloses The computing system of claim 1 (see rejection of claim 1 above) wherein the accelerator tag corresponds to a hardware accelerator (Yuan: See Abstract and section 1 on page 293: wherein offload annotation corresponds to GPU accelerator) and upon detection of the accelerator tag, the accelerator call for the library function is directed to the hardware accelerator. (Yuan: See Abstract and section 1 on page 293: wherein upon detection of the offload annotation an accelerator call for the function is directed to GPU accelerator to offload the function (See Fig. 1 and section 5 on pages 295 and 297 for further clarity)) Claim(s) 7-10 and 12 is/are rejected under 35 U.S.C. 103 as being unpatentable over Carey, Yuan, Maidee and further in view of Schluessler, PGPUB No. 2019/0087998 (cited on IDS filed on 7/24/2023). In regards to claim 1, Carey discloses An apparatus (See Fig. 3, element 300 (see [0042])) comprising: circuit implemented at least partly in hardware logic (See Fig. 3 and [0047]: wherein processor (element 310) is a hardware processor that executes instructions) circuit to: scan program code to detect a recognizable library code ([0082-0084 and 0087]: wherein a program is analyzed (scanned) to detect a recognizable software library (element 2410) which can be optimized by being implemented in an accelerator (See Figs. 3 and 6, paragraph [0043 and 0066] for further details on accelerator deployment tool that analyzes code to perform method of Fig. 25)) detecting a library signature for a library function that uniquely identifies the library function ([0082-0084]: wherein the detecting includes detecting a function call (library signature, e.g. call L1) for a library function that uniquely identifies the library function (See Figs. 24-25)) and upon detection of the library signature, perform one of: substitute the accelerator call for the library function associated with the library signature ([0083-0084 and 0087]: wherein upon detection of a function call (library signature) accelerator calls are substituted for the library functions (L1-LN) associated with the function calls (See Figs. 25 and 30)) or apply the accelerator tag to the library function associated with the library signature to indicate the accelerator call is to be substituted for the library function, wherein upon the accelerator tag being applied to the library function associated with the library signature, a subsequent scan is to be performed to detect the accelerator tag and substitute the accelerator call for the library function tagged with the accelerator tag. Carey does not disclose semiconductor apparatus comprising: one or more substrates; and circuit coupled to the one or more substrates, the circuit implemented at least partly in one or more of configurable logic or fixed-functionality hardware logic, the circuit to: scan program code to detect an accelerator tag to indicate an accelerator call for the library function, the library signature for the library function being generated through applying a hashing algorithm to the library function; and upon detection of the accelerator tag, substitute the accelerator call for the library function tagged with the accelerator tag. Carey discloses scanning code to detect library function calls which uniquely identify library functions, and upon detection of the library function calls accelerator calls for the library functions are substituted. However, Carey does not disclose substituting accelerator calls based on library signatures which are generated by applying a hashing algorithm to the library functions. Maidee discloses a library signature for a library function that uniquely identifies the library function and the library signature for the library function being generated through applying a hashing algorithm to the library function (Column 6, lines 1-22 and Column 10, lines 64-67 to Column 11, lines 1-25: wherein a compute ID is a library signature which uniquely identifies a library function and is a hash of the function. Wherein compute ID is used to replace library function with accelerator function (See Figs. 1-2 and 7)) It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify library code of Carey to include library signatures as the library code of Maidee. It would have been obvious to one of ordinary skill in the art because it would have been the simple substitution of one known element (using library signatures generated by hashing library functions to substitute accelerator calls as taught in Maidee) for another (using generic library signatures to substitute accelerator calls as taught in Carey) to yield predictable results (using library signatures generated by hashing library functions to substitute accelerator calls to perform accelerator functions) (MPEP 2143, Example B). Furthermore, using the unique compute IDs indicates that a software function may have a functionally equivalent hardware accelerator function which can replace it and improve function processing performance (Maidee: Column 6, lines 18-21, Column 11, lines 65-67 and Column 18, lines 5-7). The combination of Carey and Maidee does not disclose semiconductor apparatus comprising: one or more substrates; and circuit coupled to the one or more substrates, the circuit implemented at least partly in one or more of configurable logic or fixed-functionality hardware logic, the circuit to: scan program code to detect an accelerator tag to indicate an accelerator call for the library function and upon detection of the accelerator tag, substitute the accelerator call for the library function tagged with the accelerator tag. Carey and Maidee disclose detecting function calls library signatures to software library functions and replacing library functions with accelerator calls to an accelerator as to improve run-time performance of the code. However, Carey and Maidee do not disclose replacing library functions with accelerator calls upon detecting an accelerator tag. Yuan discloses scan program code to detect an accelerator tag to indicate an accelerator call for the library function (See Abstract and section 1 on page 293: wherein a program is scanned during runtime to detect an offload annotation (accelerator tag) in a CPU function of a CPU library. Wherein the annotation corresponds to an accelerator (for example a GPU, see page 299 section 6 for other examples of accelerators) and specifies a corresponding accelerator function to be called in an accelerator library. Thus, the offload annotation can be considered an accelerator tag (See Fig. 1 and section 5 on pages 295 and 297 for further clarity)) upon detection of the accelerator tag, substitute the accelerator call for a library function tagged with the accelerator tag (See Abstract and section 1 on page 293: wherein upon detection of the offload annotation an accelerator function call is substituted for the CPU library function tagged with the offload annotation (See Fig. 1 and section 5 on pages 295 and 297 for further clarity)) It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify the system of Carey to use offload annotations in the CPU library to replace library functions with calls to accelerator functions as taught in Yuan. It would have been obvious to one of ordinary skill in the art because the offload annotations enable end users to use both CPU libraries and emerging accelerator libraries with few or no changes to code, allow automatic offloading of functions to an accelerator, page large datasets, transfer data across devices automatically, and manage allocations to minimize data transfer for better performance. (Yuan: Abstract, Introduction and Section 3 on pages 293-295) The overall combination of Carey, Maidee and Yuan does not disclose semiconductor apparatus comprising: one or more substrates; and circuit coupled to the one or more substrates, the circuit implemented at least partly in one or more of configurable logic or fixed-functionality hardware logic. Schluessler discloses semiconductor apparatus ([0126 and Fig. 11B]) comprising: one or more substrates ([0126]: wherein a substrate (element 1180) is disclosed) and circuit coupled to the one or more substrates, the circuit implemented at least partly in one or more of configurable logic or fixed-functionality hardware logic. ([0126]: wherein circuitry (elements 1172 and 1174) is coupled to the substrate and the circuitry is implemented in configurable logic or fixed-functionality) It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to modify the apparatus of Carey to be implemented in an integrated circuit semiconductor apparatus as taught in Schluessler. It would have been obvious to one of ordinary skill in the art because it would have been the simple substitution of one known element (implementing a system as an integrated circuit semiconductor apparatus as taught in Schluessler) for another (implementing a system as a generic apparatus as taught in Carey) to obtain predictable results (implementing an integrated circuit semiconductor apparatus including hardware logic to perform operations) (MPEP 2143, Example B). Furthermore, integrated circuit semiconductor devices can provide improved performance, lower power consumption and be more cost-effective for manufacturing purposes. In regards to claim 8, the combination of Carey, Maidee, Yuan and Schluessler discloses The semiconductor apparatus of claim 7 (see rejection of claim 7 above) wherein to substitute the accelerator call comprises to provide a plurality of code segments (Carey [0043-0044 and 0066]: wherein to substitute accelerator calls the accelerators must first be programmed or imaged in order to provide the accelerators used to perform the functions. Thus, substituting the accelerator call comprises deploying accelerator images or HDL (code segments) to each corresponding accelerator (See Figs. 4, 6, 8, 11 for further clarity of accelerator deployment tools used to generate code segments used to image one or more accelerators)) each code segment optimized for a respective one of a plurality of hardware accelerators (Carey [0065-0066, 0082, 0087 and 0089]: wherein each accelerator image or HDL (code segments) is optimized for a respective one of a plurality of accelerators of a programmable device. For example, each accelerator can perform a different function such as compression, graphics, floating-point, etc.; thus, each code segment would be optimized for a different function for each respective hardware accelerator (See Figs. 4, 6, 8, 11 for further clarity of accelerator deployment tools used to generate code segments used to image one or more accelerators of a programmable device)) and wherein one of the plurality of code segments is to be selected based on availability of the respective one of the plurality of hardware accelerators. (Carey [0083 and 0088]: wherein an accelerator image or HDL (code segment) to implement an accelerator is selected based on availability of hardware accelerator resources of a programmable device) In regards to claim 9, the combination of Carey, Maidee, Yuan and Schluessler discloses The semiconductor apparatus of claim 7 (see rejection of claim 7 above) wherein to substitute the accelerator call comprises to provide a code segment that interfaces with a plurality of hardware accelerators (Carey [0043-0047]: wherein accelerator deployment tool (code segment as it is software code executed by processor) interfaces with accelerators of programmable device (element 312) as to image and program/re-program accelerators which are used upon substituting accelerator calls(See Figs. 3-4 and 6)) and wherein one of the plurality of hardware accelerators is to be selected based on availability. (Carey [0083 and 0088]: wherein the selected hardware accelerator is selected based on being an available hardware accelerator resource) In regards to claim 10, the combination of Carey, Maidee, Yuan and Schluessler discloses The semiconductor apparatus of claim 7 (see rejection of claim 7 above) wherein the circuit is further to: provide an interface between the program code and one or more hardware accelerators (Carey [0043-0044 and Figs. 3-4]: wherein an accelerator deployment tool is an interface between the program code including code portions and one or more accelerators of a programmable device)and perform translation between the program code and a selected one of the one or more hardware accelerators (Carey [0060 and 0067]: wherein code portions of the program code are converted (translated) to code to be implemented on a selected one of hardware accelerators) wherein the selected one of the one or more hardware accelerators is to be selected based on availability. (Carey [0083 and 0088]: wherein the selected hardware accelerator is selected based on being an available hardware accelerator resource) In regards to claim 12, the combination of Carey, Maidee, Yuan and Schluessler discloses The semiconductor apparatus of claim 7 (see rejection of claim 7 above) wherein the circuit is further to determine whether to substitute the accelerator call based at least on one or more of performance, resources, environment, or task priority. (Carey [0068, 0071, 0083 and 0088]: wherein determining whether to substitute the accelerator call is based on run-time performance and available accelerator resources| Yuan, section 5 and page 298: wherein the accelerator function is substituted based on runtime performance calculations. For example, cost estimates are determined for running the function in CPU and on accelerator, and if accelerator has lower cost estimate the function is run on accelerator) Response to Arguments Applicant’s arguments, see pages 8-9 of remarks, filed on 2/3/2026, with respect to the rejection(s) of claim(s) 1, 7, 13 and 19 under 35 USC 103 in view of Carey and Yuan and/or Carey, Yuan and Schluessler have been fully considered and are persuasive. Therefore, the rejection(s) have been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of Carey, Maidee and Yuan and/or Carey, Maidee, Yuan and Schluessler. Claims 2-6, 8-10, 12, 14-18 and 20-25 are argued at least based on dependency upon one of the independent claims above and therefore remain rejected at least based upon their respective dependencies. 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 COURTNEY P SPANN whose telephone number is (571)431-0692. The examiner can normally be reached M-F, 9am-6pm, EST. 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, Jyoti Mehta can be reached at 571-270-3995. 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. /COURTNEY P SPANN/ Primary Examiner, Art Unit 2183
Read full office action

Prosecution Timeline

Dec 22, 2021
Application Filed
Feb 16, 2022
Response after Non-Final Action
Feb 20, 2025
Non-Final Rejection — §103
May 27, 2025
Response Filed
Jun 06, 2025
Final Rejection — §103
Sep 09, 2025
Request for Continued Examination
Sep 18, 2025
Response after Non-Final Action
Oct 30, 2025
Non-Final Rejection — §103
Feb 03, 2026
Response Filed
Mar 02, 2026
Final Rejection — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12596550
Dual-Mode Floating Point Processor Operation
2y 5m to grant Granted Apr 07, 2026
Patent 12585468
APPARATUS AND METHOD USING HINT CAPABILITY FOR CONTROLLING MICRO-ARCHITECTURAL CONTROL FUNCTION
2y 5m to grant Granted Mar 24, 2026
Patent 12572362
PROCESSOR AND METHOD FOR EXECUTING A LOOPING CODE SEGMENT WITH ZERO OVERHEAD
2y 5m to grant Granted Mar 10, 2026
Patent 12566609
MICROPROCESSOR WITH APPARATUS AND METHOD FOR HANDLING OF INSTRUCTIONS WITH LONG THROUGHPUT
2y 5m to grant Granted Mar 03, 2026
Patent 12566724
SEQUENTIAL PROCESSING METHOD AND APPARATUS OF DATA PACKET
2y 5m to grant Granted Mar 03, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

5-6
Expected OA Rounds
80%
Grant Probability
99%
With Interview (+21.3%)
2y 11m
Median Time to Grant
High
PTA Risk
Based on 258 resolved cases by this examiner. Grant probability derived from career allow 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