Detailed Action
This action is in response to application filed on 09/29/2023.
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claims 1-15 are pending.
Claims 1-15 are rejected.
Drawings
The drawings submitted on 09/29/2023 are accepted.
Claim Objections
The examiner suggests amending the claims in the following manner for clarification purposes:
3. (Currently Amened) The method according to claim 1, wherein analysing the command stream to detect at least [[a]] the first dependency comprises detecting a resource access dependency.
4. (Currently Amened) The method according to claim 1, wherein analysing the command stream to detect at least [[a]] the first dependency comprises detecting that the command stream comprises plural work item queues.
5. (Currently Amened) The method according to claim 4, wherein analysing the command stream to detect at least [[a]] the first dependency comprises detecting a cross-queue synchronization dependency.
6. (Currently Amened) The method according to claim 1, wherein generating the at least one command stream synchronization control instruction comprises generating at least one wait instruction to cause a wait before execution of the command stream.
7. (Currently Amened) The method according to claim 1, wherein generating at least one command stream synchronization control instruction comprises generating the at least one synchronise instruction to cause a synchronization after execution of the command stream.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1 is rejected under 35 U.S.C. 101 as being directed to abstract idea without significantly more.
Representative claim 1 is directed to a computer-implemented method of preparing a command stream for a parallel processor, comprising:
analysing the command stream to detect at least a first dependency;
generating at least one timeline dependency point responsive to detecting the first dependency;
determining a latest action for the first dependency to derive a completion stream timeline point for the first dependency;
comparing the completion stream timeline point for the first dependency with a completion stream timeline point for a second dependency to determine a latest stream timeline point;
generating at least one command stream synchronization control instruction according to the latest stream timeline point; and
providing the command stream and the at least one command stream synchronization control instruction to an execution unit of the parallel processor.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely,
Mental processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper (see, October 2019 Patent Eligibility Guidance Update, 84 Fed. Reg. 55,942, hereinafter “PEG”).
For instance, humans can mentally and/or via aid of pen/paper perform method of preparing a command stream, comprising: mentally analysing the command stream to detect at least a first dependency; mentally/via pen paper generating at least one timeline dependency point responsive to detecting the first dependency; mentally determining a latest action for the first dependency to derive a completion stream timeline point for the first dependency; mentally/via pen paper comparing the completion stream timeline point for the first dependency with a completion stream timeline point for a second dependency to determine a latest stream timeline point; mentally/via pen paper generating at least one command stream synchronization control instruction according to the latest stream timeline point; and mentally/via pen paper providing the command stream and the at least one command stream synchronization control instruction.
Per prong 2, Step 2A, the additional non-emphasized elements as noted above; namely; “computer-implemented method… for a parallel processor… [providing to]... an execution unit of the parallel processor”; are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(f, g, h). Additionally, the recited claim limitations do not improve the functionality of the electronic device or achieve improved technical results.
Per Step 2B, the additional non-emphasized elements as noted above; namely; “computer-implemented method… for a parallel processor… [providing to]... an execution unit of the parallel processor”; are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(d, f, g, h). Additionally, the recited claim limitations do not improve the functionality of the electronic device or achieve improved technical results. Accordingly, the above limitations singularly or in combination do not result in the claim as a whole amounting to significantly more than the judicial exception.
Accordingly, claim 1 is rejected under 35 U.S.C. 101 as being directed to an abstract idea without significantly more.
Independent claims 8, and 15 are apparatus and medium claims corresponding to method claim 1 and are of substantially same scope.
Accordingly, claims 8, and 15 are rejected under the same rational as set forth for claim 1.
Dependent claims 2-7, and 9-14 when considered individually or in combination per steps as noted above are rejected under the same rational as set forth above for claims 1, and 8. In particular,
As per claim 2, the rejection of claim 1 further incorporated, further recites wherein the preparing the command stream comprises a pre-processor function of a command stream builder.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, Mental Processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper.
Per prong 2, Step 2A and 2B, the additional elements (e.g. non-emphasized elements) are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception - see MPEP 2106.05(g) and/or are merely adding words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(d, f, g, h).
As per claim 3, the rejection of claim 1 further incorporated, further recites wherein analysing the command stream to detect at least a first dependency comprises detecting a resource access dependency.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, Mental Processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper.
Per prong 2, Step 2A and 2B, the additional elements (e.g. non-emphasized elements) are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception - see MPEP 2106.05(g) and/or are merely adding words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(d, f, g, h).
As per claim 4, the rejection of claim 1 further incorporated, further recites wherein analysing the command stream to detect at least a first dependency comprises detecting that the command stream comprises plural work item queues.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, Mental Processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper.
Per prong 2, Step 2A and 2B, the additional elements (e.g. non-emphasized elements) are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception - see MPEP 2106.05(g) and/or are merely adding words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(d, f, g, h).
As per claim 5, the rejection of claim 4 further incorporated, further recites wherein analysing the command stream to detect at least a first dependency comprises detecting a cross-queue synchronization dependency.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, Mental Processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper.
Per prong 2, Step 2A and 2B, the additional elements (e.g. non-emphasized elements) are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception - see MPEP 2106.05(g) and/or are merely adding words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(d, f, g, h).
As per claim 6, the rejection of claim 1 further incorporated, further recites wherein generating at least one command stream synchronization control instruction comprises generating at least one wait instruction to cause a wait before execution of the command stream.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, Mental Processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper.
Per prong 2, Step 2A and 2B, the additional elements (e.g. non-emphasized elements) are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception - see MPEP 2106.05(g) and/or are merely adding words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(d, f, g, h).
As per claim 7, the rejection of claim 1 further incorporated, further recites wherein generating at least one command stream synchronization control instruction comprises generating at least one synchronise instruction to cause a synchronization after execution of the command stream.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, Mental Processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper.
Per prong 2, Step 2A and 2B, the additional elements (e.g. non-emphasized elements) are mere data gathering/sending steps/insignificant extra-solution activity to the judicial exception - see MPEP 2106.05(g) and/or are merely adding words “apply it” (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(d, f, g, h).
Claims 9-14 are apparatus claims corresponding to method claim 2-7 and are of substantially same scope.
Accordingly, claims 9-14 are rejected under the same rational as set forth for claim 2-7.
Accordingly, claims 1-15 are rejected under 35 U.S.C. 101 as being directed to abstract idea.
Allowable Subject Matter
Claims 1-15 are allowable if above noted rejections are overcome via amendments and/or arguments. Reasons for allowance will be held in abeyance until all matters in the prosecution are closed.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant’s disclosure.
DATA PROCESSING SYSTEMS
DOCUMENT ID
US 20200065107 A1
DATE PUBLISHED
2020-02-27
Abstract
A data processing system in which a host processor prepares command streams for causing an accelerator of the data processing system to perform processing tasks for an application executing on the host processor, each command stream including a sequence of commands for implementation by a command stream execution unit of the accelerator. A pre-execution unit is provided that is operable to interpret commands fetched from command stream storage before the command is provided to the command stream execution unit for implementation to determine whether the pre-execution unit is able to perform an action in response to the command and, when the pre-execution unit is able to do so, to perform an action in response to the command.
REORDERING OF COMMAND STREAMS FOR GRAPHICAL PROCESSING UNITS (GPUs)
DOCUMENT ID
US 20140184623 A1
DATE PUBLISHED
2014-07-03
Abstract
In general, techniques are described for analyzing a command stream that configures a graphics processing unit (GPU) to render one or more render targets. A device comprising a processor may perform the techniques. The processor may be configured to analyze the command stream to determine a representation of the one or more render targets defined by the command stream. The processor may also be configured to, based on the representation of the render targets, and identify one or more rendering inefficiencies that will occur upon execution of the command stream by the GPU. The processor may also be configured to re-order one or more commands in the command stream so as to reduce the identified rendering inefficiencies that will occur upon execution of the command stream by the GPU.
CODE REFACTORING MECHANISM FOR ASYNCHRONOUS CODE OPTIMIZATION USING TOPOLOGICAL SORTING
DOCUMENT ID
US 20180088937 A1
DATE PUBLISHED
2018-03-29
Abstract
Methods, systems, apparatuses, and computer program products are provided for transforming asynchronous code into more efficient, logically equivalent asynchronous code; Program code is converted into a first syntax tree. A dependency graph is generated from the first syntax tree with each node of the dependency graph corresponding to a code statement and having an assigned weight. Weighted topological sorting of the dependency graph is performed to generate a sorted dependency graph. A second syntax tree is generated from the sorted dependency graph. In another implementation, the program code is transformed into await-relaxed and/or loop-relaxed program code prior to being transformed into the first syntax tree.
SYNCHRONIZING GRAPH EXECUTION
DOCUMENT ID
US 20230084951 A1
DATE PUBLISHED
2023-03-16
Abstract
Apparatuses, systems, and techniques to facilitate execution graph synchronization. In at least one embodiment, an application programming interface comprising one or more parameters is used to create dependencies between graph code nodes and one or more software routines.
See form 892.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MUSTAFA A AMIN whose telephone number is (571)270-3181. The examiner can normally be reached on Monday-Friday from 8:00 AM to 5:00 PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kevin Young, can be reached on 571-270-3180. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center. Status information for published applications may be obtained from Patent Center. Status information for unpublished applications is available through Patent Center for authorized users only. Should you have questions about access to Patent Center, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/MUSTAFA A AMIN/Primary Examiner, Art Unit 2194