Prosecution Insights
Last updated: July 17, 2026
Application No. 17/922,392

AUTOMATIC TUNING OF A HETEROGENEOUS COMPUTING SYSTEM

Non-Final OA §103
Filed
Oct 31, 2022
Priority
May 15, 2020 — EU 20174913.2 +2 more
Examiner
LEE, SANGKYUNG
Art Unit
2858
Tech Center
2800 — Semiconductors & Electrical Systems
Assignee
Partec AG
OA Round
4 (Non-Final)
62%
Grant Probability
Moderate
4-5
OA Rounds
0m
Est. Remaining
71%
With Interview

Examiner Intelligence

Grants 62% of resolved cases
62%
Career Allowance Rate
93 granted / 151 resolved
-6.4% vs TC avg
Moderate +10% lift
Without
With
+9.6%
Interview Lift
resolved cases with interview
Typical timeline
2y 10m
Avg Prosecution
36 currently pending
Career history
192
Total Applications
across all art units

Statute-Specific Performance

§101
5.4%
-34.6% vs TC avg
§103
88.5%
+48.5% vs TC avg
§102
4.5%
-35.5% vs TC avg
§112
1.3%
-38.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 151 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 . Continued Examination Under 37 CFR 1.114 A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 06/04/2026 has been entered. Status of the claims The argument received on June 4, 2026 has been acknowledged and entered. Claims 1 and 8 are amended. Thus, claims 1-11 are currently pending. Response to Arguments Applicant’s arguments filed on June 4, 2026 with respect to the rejection with respect to claims 1-11 under 35 U.S.C. 103 have been fully considered but they are moot in view of new ground of rejection. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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 and 8-11 are rejected under 35 U.S.C. 103 as being unpatentable over Wu et al. (“A self-tuning system based on application profiling and performance analysis for optimizing Hadoop MapReduce cluster configuration”, 20th annual international conference on high performance computing, IEEE, 18 December 2013, pages 89-98) cited in IDS (submitted on 11/18/2022) in view of Fraser et al. (US 9,760,399 B1, hereinafter referred to as “Fraser”). Regarding claim 1, Wu teaches a method of configuring program parameters during run-time of a computing program for computation in a heterogeneous computing system (Abstract: automates the tuning of Hadoop configuration settings based on deduced application performance requirements), the method comprising: receiving a transformation of the computing program, the transformation comprising one or more computing applications (page 89, second paragraph: the input job is divided and then assigned to several worker nodes by a master node….then assigns reduce tasks that do aggregating, combining, filtering or transforming functions on these key-value pairs using a user-supplied function to form the final output); generating for each computing application one or more tuning parameters, the one or more tuning parameters being categorized into classes (abstract: a set of equivalence classes of MapReduce applications for which the most appropriate Hadoop configuration parameters that maximally improve performance for that class); and for a computing application to be optimized, page 90, first paragraph: fine-tune the Hadoop cluster configuration for the job classes identified in the first step; page 90, second paragraph: configuration settings are automatically applied to provide significantly improved performance for the new incoming job; page 92: optimal configuration settings; page 93: we iteratively update these clusters by reassigning points to them; page 95: when the iteration ends, this algorithm returns the best solutions), obtaining a performance metric for the execution of the computing application using the adjusted one or more tuning parameters and determining if the adjusted one or more tuning parameters provide an improvement with respect to the performance metric and whether a termination criterion has been met for ending the adjusting (page 90, first paragraph: fine-tune the Hadoop cluster configuration for the job classes identified in the first step; page 90, second paragraph: configuration settings are automatically applied to provide significantly improved performance for the new incoming job; page 92: optimal configuration settings; page 93: we iteratively update these clusters by reassigning points to them; page 95: when the iteration ends, this algorithm returns the best solutions), Wu does not specifically teach storing, during run-time of the computing program, an indicator characteristic of a current dynamic state of the computing application being optimized, the indicator being captured during execution of the computing application and used in the optimization to determine, prior to said recurringly adjusting, whether a known optimization previously generated for the dynamic state is available for the dynamic state indicated by the stored indicator, the known optimization comprising a previously-determined adjustment of the one or more tuning parameters that satisfied said termination criterion. However, Fraser teaches storing, during run-time of the computing program, an indicator characteristic of a current dynamic state of the computing application being optimized, the indicator being captured during execution of the computing application and used in the optimization to determine (col. 1, line 63-col. 2, line 8: In particular, various embodiments determine the values of various operational parameters of a computing device. These operational parameters can include, for example, temperature, available memory, processor usage, number of concurrently executing applications, number of open connections, and the like. If the value of any of these operational parameters falls outside a specified range, or at least approaches a threshold value, etc., an attempt can be made to maintain (or regain) a healthy operational state of the device; col. 2, line 26-36: different types of termination actions can be performed based upon state of the device or other such information; col. 15, lines 19- 27: various data and metric aggregated from various users can be used to help seed the dynamic prediction algorithms, which can be locally optimized on a user's device, note that the above feature of “the values of various operational parameters of a computing device” and “If the value of any of these operational parameters falls outside a specified range, or at least approaches a threshold value, etc., an attempt can be made to maintain (or regain) a healthy operational state of the device” in col. 1, line 63-col. 2, line 8, “different types of termination actions can be performed based upon state of the device or other such information” in col. 2, line 26-3, and “various data and metric aggregated from various users can be used to help seed the dynamic prediction algorithms, which can be locally optimized on a user's device” in col. 15, lines 19- 27 reads on “storing, during run-time of the computing program, an indicator (i.e., state of the device or other such information) characteristic of a current dynamic state of the computing application being optimized, the indicator being captured during execution of the computing application and used in the optimization to determine”), prior to said recurringly adjusting, whether a known optimization previously generated for the dynamic state is available for the dynamic state indicated by the stored indicator (col. 2, line 26-36: different types of termination actions can be performed based upon state of the device or other such information. These can include actions of a first type that terminate, kill, or cleanup applications or processes on the device, or actions of a second type that throttle, slow, or otherwise adjust the operation of applications or processes on the device, among other such options, note that the above feature of “different types of termination actions can be performed based upon state of the device or other such information … These can include actions of a first type that terminate …otherwise adjust the operation of applications or processes on the device, among other such options” in col. 2, line 26-36 reads on “prior to said recurringly adjusting, whether a known optimization previously generated for the dynamic state is available for the dynamic state indicated by the stored indicator” because, there is a procedure checking whether optimization state is available or not before adjusting, the known optimization comprising a previously determined adjustment of the one or more tuning parameters (col. 1, line 63-col. 2, line 8: see above; col. 2, line 26-36: see above, note that the above feature of “If the value of any of these operational parameters falls outside a specified range...an attempt can be made to maintain (or regain) a healthy operational state of the device” in col. 1, line 63-col. 2, line 8 “different types of termination actions can be performed based upon state of the device or other such information…adjust the operation of applications” in col. 2, lines 26-36 reads on “a previously determined adjustment of the one or more tuning parameters” because adjustment the operation of applications or processes on the device is one of regaining the healthy operational state). Regarding claim 2, Wu in view of Fraser teaches all the limitation of claim 1, in addition, Wu teaches that the method further comprises generating the transformation by a compiler adapted to evaluate the computing program to determine computing applications which may be executed in parallel by different processing units (page 89, second paragraph: the input job is divided and then assigned to several worker nodes by a master node….then assigns reduce tasks that do aggregating, combining, filtering or transforming functions on these key-value pairs using a user-supplied function to form the final output; page 91: The Hadoop MapReduce module is a Hadoop YARN based system for parallel data processing). Regarding claim 3, Wu in view of Fraser teaches all the limitation of claim 1, in addition, Wu teaches that the optimization is performed using a tuning routine selected from a model-based prediction process and an online search process (page 90, first paragraph: fine-tune the Hadoop cluster configuration for the job classes identified in the first step; page 90, second paragraph: configuration settings are automatically applied to provide significantly improved performance for the new incoming job; page 91: Our overall approach to the automated configuration management of a Hadoop cluster is based on a machine learning phase, which then is used for self-tuning. The machine learning phase requires training; 93: searching for the optimum configuration, note that the above feature of “settings are automatically applied to provide significantly improved performance for the new incoming job” in page 90, “a machine learning phase, which then is used for self-tuning” in page 91 and “searching for the optimum configuration” in page 93 reads on “the optimization is performed using a tuning routine selected from a model-based prediction process and an online search process. Regarding claim 4, Wu in view of Fraser teaches all the limitation of claim 3, in addition, Wu teaches that the online search process is used to provide training data to update the model-based prediction process (page 91: our overall approach to the automated configuration management of a Hadoop cluster is based on a machine learning phase, which then is used for self-tuning; page 92: we have redefined the performance model and developed a new solution, which can not only eliminate this effect caused by different data sizes; page 93: searching for the optimum configuration, note that the above feature of “a machine learning phase, which then is used for self-tuning” in page 91, “developed a new solution, which can not only eliminate this effect caused by different data sizes” in page 92, and “searching for the optimum configuration” in page 93 reads on “online search process is used to provide training data to update the model-based prediction process). Regarding claim 5, Wu in view of Fraser teaches all the limitation of claim 1, in addition, Wu teaches that the one or more tuning parameters are used to determine if the optimization procedure can be performed in a restricted search space (page 92: our investigations we have also found that different sizes of input data will affect the performance pattern differently to some degree….we have redefined the performance model and developed a new solution, which can not only eliminate this effect caused by different data sizes; page 93: decrease the size of the parameter space, note that the above feature of “decrease the size of the parameter space” reads on “a one or more tuning parameters”). Regarding claim 8, Wu teaches a computing system programmed to optimize a computing application, the computing application adjusts one or more tuning parameters of the computing application, executes the computing application using the adjusted one or more tuning parameters (page 90, first paragraph: fine-tune the Hadoop cluster configuration for the job classes identified in the first step; page 90, second paragraph: configuration settings are automatically applied to provide significantly improved performance for the new incoming job; page 92: optimal configuration settings; page 93: we iteratively update these clusters by reassigning points to them; page 95: when the iteration ends, this algorithm returns the best solution), obtains a performance metric for the execution of the computing application using the adjusted one or more tuning parameters and determines if the adjusted one or more tuning parameters provide an improvement with respect to the performance metric and whether a termination criterion has been met for ending the adjusting (page 90, first paragraph: fine-tune the Hadoop cluster configuration for the job classes identified in the first step; page 90, second paragraph: configuration settings are automatically applied to provide significantly improved performance for the new incoming job; page 92: optimal configuration settings; page 93: we iteratively update these clusters by reassigning points to them; page 95: when the iteration ends, this algorithm returns the best solution), Wu does not specifically teach storing, during run-time of the computing program, an indicator characteristic of a current dynamic state of the computing application being optimized, the indicator being captured during execution of the computing application and used in the optimization to determine, prior to said recurringly adjusting, whether a known optimization previously generated for the dynamic state is available for the dynamic state indicated by the stored indicator, the known optimization comprising a previously-determined adjustment of the one or more tuning parameters that satisfied said termination criterion. However, Fraser teaches storing, during run-time of the computing program, an indicator characteristic of a current dynamic state of the computing application being optimized, the indicator being captured during execution of the computing application and used in the optimization to determine (col. 1, line 63-col. 2, line 8: In particular, various embodiments determine the values of various operational parameters of a computing device. These operational parameters can include, for example, temperature, available memory, processor usage, number of concurrently executing applications, number of open connections, and the like. If the value of any of these operational parameters falls outside a specified range, or at least approaches a threshold value, etc., an attempt can be made to maintain (or regain) a healthy operational state of the device; col. 2, line 26-36: different types of termination actions can be performed based upon state of the device or other such information; col. 15, lines 19- 27: various data and metric aggregated from various users can be used to help seed the dynamic prediction algorithms, which can be locally optimized on a user's device, note that the above feature of “the values of various operational parameters of a computing device” and “If the value of any of these operational parameters falls outside a specified range, or at least approaches a threshold value, etc., an attempt can be made to maintain (or regain) a healthy operational state of the device” in col. 1, line 63-col. 2, line 8, “different types of termination actions can be performed based upon state of the device or other such information” in col. 2, line 26-3, and “various data and metric aggregated from various users can be used to help seed the dynamic prediction algorithms, which can be locally optimized on a user's device” in col. 15, lines 19- 27 reads on “storing, during run-time of the computing program, an indicator (i.e., state of the device or other such information) characteristic of a current dynamic state of the computing application being optimized, the indicator being captured during execution of the computing application and used in the optimization to determine”), prior to said recurringly adjusting, whether a known optimization previously generated for the dynamic state is available for the dynamic state indicated by the stored indicator (col. 2, line 26-36: different types of termination actions can be performed based upon state of the device or other such information. These can include actions of a first type that terminate, kill, or cleanup applications or processes on the device, or actions of a second type that throttle, slow, or otherwise adjust the operation of applications or processes on the device, among other such options, note that the above feature of “different types of termination actions can be performed based upon state of the device or other such information … These can include actions of a first type that terminate …otherwise adjust the operation of applications or processes on the device, among other such options” in col. 2, line 26-36 reads on “prior to said recurringly adjusting, whether a known optimization previously generated for the dynamic state is available for the dynamic state indicated by the stored indicator” because, there is a procedure checking whether optimization state is available or not before adjusting), the known optimization comprising a previously determined adjustment of the one or more tuning parameters (col. 1, line 63-col. 2, line 8: see above; col. 2, line 26-36: see above, note that the above feature of “If the value of any of these operational parameters falls outside a specified range...an attempt can be made to maintain (or regain) a healthy operational state of the device” in col. 1, line 63-col. 2, line 8 “different types of termination actions can be performed based upon state of the device or other such information…adjust the operation of applications” in col. 2, lines 26-36 reads on “a previously determined adjustment of the one or more tuning parameters” because adjustment the operation of applications or processes on the device is one of regaining the healthy operational state). Regarding claim 9, Wu in view of Fraser teaches all the limitation of claim 8, in addition, Wu teaches that the computing system is adapted to perform the optimization using a tuning routine selected from a model-based prediction process and an online search process (page 90, first paragraph: fine-tune the Hadoop cluster configuration for the job classes identified in the first step; page 90, second paragraph: configuration settings are automatically applied to provide significantly improved performance for the new incoming job; page 91: Our overall approach to the automated configuration management of a Hadoop cluster is based on a machine learning phase, which then is used for self-tuning. The machine learning phase requires training; 93: searching for the optimum configuration, note that the above feature of “settings are automatically applied to provide significantly improved performance for the new incoming job” in page 90, “a machine learning phase, which then is used for self-tuning” in page 91 and “searching for the optimum configuration” in page 93 reads on “the optimization is performed using a tuning routine selected from a model-based prediction process and an online search process). Regarding claim 10, Wu in view of Fraser teaches all the limitation of claim 9, in addition, Wu teaches that the computing system is adapted to use the online search process to provide training data to update the model-based prediction process (page 91: our overall approach to the automated configuration management of a Hadoop cluster is based on a machine learning phase, which then is used for self-tuning; page 92: we have redefined the performance model and developed a new solution, which can not only eliminate this effect caused by different data sizes; page 93: searching for the optimum configuration, note that the above feature of “a machine learning phase, which then is used for self-tuning” in page 91, “developed a new solution, which can not only eliminate this effect caused by different data sizes” in page 92, and “searching for the optimum configuration” in page 93 reads on “online search process is used to provide training data to update the model-based prediction process). Regarding claim 11, Wu in view of Fraser teaches all the limitation of claim 8, in addition, Wu teaches that the computing system is adapted to use one or more tuning parameters to determine if the optimization procedure can be performed in a restricted search space ( page 92: our investigations we have also found that different sizes of input data will affect the performance pattern differently to some degree….we have redefined the performance model and developed a new solution, which can not only eliminate this effect caused by different data sizes; page 93: decrease the size of the parameter space, note that the above feature of “decrease the size of the parameter space” reads on “a one or more tuning parameters”). Claims 6 and 7 are rejected under 35 U.S.C. 103 as being unpatentable over Wu in view of Fraser further in view of Rudolf et al. (“Efficient hierarchical online-autotuning: a case study on polyhedral accelerator mapping,” proceedings of the ACM international conference on supercomputing, 26 June 2019, pages 354-366, hereinafter referred to as “Rudolf”) cited in IDS (submitted on 11/18/2022). Regarding claim 6, Wu in view of Fraser teaches all the limitation of claim 2. Wu and Fraser do not specifically teach that the transformation is generated using a polyhedral parallelization compiler. However, Rudolf teaches that the transformation is generated using a polyhedral parallelization compiler (abstract: a polyhedral parallelizing compiler for; page 356: polyhedral compilation techniques are determined). Wu and Rudolf are both considered to be analogous to the claimed invention because they are in the same filed of identifying the optimal program variants. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the polyhedral parallelization compiler such as is described in Padilla into Rudolf, in order to allow for hierarchical tuning of dependent subspaces using individual search algorithms, thus reducing the complexity of the space by orders of magnitude (Rudolf, page 355). Regarding claim 7, Wu in view of Fraser and Rudolf teaches all the limitation of claim 6. Wu and Fraser do not specifically teach that the polyhedral parallelization compiler transforms source code into an intermediate representation and further transforms the intermediate representation into binary code suitable for execution on computing platforms forming the heterogeneous computing system. However, Rudolf teaches that the polyhedral parallelization compiler transforms source code into an intermediate representation (abstract: a polyhedral parallelizing compiler for; page 356: polyhedral compilation techniques are determined) and further transforms the intermediate representation into binary code suitable for execution on computing platforms forming the heterogeneous computing system (page 358: generating a few hundred or thousand different versions of the code enormously increases compile time and binary size). Wu and Rudolf are both considered to be analogous to the claimed invention because they are in the same filed of identifying the optimal program variants. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the polyhedral parallelization compiler such as is described in Padilla into Rudolf, in order to allow for hierarchical tuning of dependent subspaces using individual search algorithms, thus reducing the complexity of the space by orders of magnitude (Rudolf, page 355). Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to SANGKYUNG LEE whose telephone number is (571)272-3669. The examiner can normally be reached Monday-Friday 8:30am-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, LEE RODAK can be reached at 571-270-5628. 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. /SANGKYUNG LEE/Examiner, Art Unit 2858 /LEE E RODAK/Supervisory Patent Examiner, Art Unit 2858
Read full office action

Prosecution Timeline

Show 2 earlier events
Aug 25, 2025
Response Filed
Sep 19, 2025
Non-Final Rejection mailed — §103
Jan 20, 2026
Response Filed
Apr 01, 2026
Final Rejection mailed — §103
May 26, 2026
Response after Non-Final Action
Jun 04, 2026
Request for Continued Examination
Jun 08, 2026
Response after Non-Final Action
Jul 02, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12669402
AUDIO BASED WOODEN UTILITY POLE DECAY DETECTION BASED ON DISTRIBUTED ACOUSTIC SENSING AND MACHINE LEARNING
3y 4m to grant Granted Jun 30, 2026
Patent 12663389
A SYSTEM AND METHOD FOR DIFFRACTION-BASED STRUCTURE DETERMINATION WITH SIMULTANEOUS PROCESSING MODULES
4y 8m to grant Granted Jun 23, 2026
Patent 12650536
Integration and Calibration Method of Geomagnetic Vector Measuring Device for Exploration
11m to grant Granted Jun 09, 2026
Patent 12644752
SENSOR INTERFACE TECHNOLOGY
4y 7m to grant Granted Jun 02, 2026
Patent 12618871
APPARATUSES AND METHODS FOR ELECTROCHEMICAL IMPEDANCE SPECTROSCOPY MEASUREMENTS
3y 1m to grant Granted May 05, 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

4-5
Expected OA Rounds
62%
Grant Probability
71%
With Interview (+9.6%)
2y 10m (~0m remaining)
Median Time to Grant
High
PTA Risk
Based on 151 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