DETAILED ACTION
Claims 1-3, 5-13, and 15-20 are pending.
Claims 1-3, 5-7, 10-13, 15-17, and 19-20 have been examined.
Claims 8-9 and 18 are withdrawn.
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 .
Specification
The lengthy specification has not been checked to the extent necessary to determine the presence of all possible minor errors. Applicant’s cooperation is requested in correcting any errors of which applicant may become aware in the specification.
Claim Objections/Recommendations
Claim 1 is objected to because of the following informalities:
On page 2, 2nd to last line, “part of program” is grammatically and must be reworded. It appears that --the-- should be inserted before “program”.
In the last paragraph, there is a lack of antecedent basis for “the part of the program that requires the set of one or more processing operations to be performed”, as no such requirement was previously set forth. It appears that applicant could amend line 7 to read --when a part of a program that requires a set of one or more processing operations to be performed is being executed…--.
Claim 5 objected to because of the following informalities:
In line 3, insert --the-- before “program”.
The phrase “the part of the program that requires…” lacks basis for similar reasoning given above.
Though claim 8 is not yet rejoined (because claim 1 is not yet allowable), the examiner recommends that applicant review for issues. For instance, the examiner would recommend deleting “further,” in line 2. Also, there appears to be a basis issue for “the program” since there are multiple programs in claim 1.
In claim 10, in line 2 of the “wherein…” paragraph, replace “a set” with --the set-- to tie the set to that in line 2 of the previous paragraph.
Claim 10 is objected to because of the following informalities:
On page 5, last line, “part of program” is grammatically and must be reworded. It appears that --the respective-- should be inserted before “program”.
In the last paragraph, there is a lack of basis for “the part of the program that requires the set of one or more processing operations to be performed” (for similar reasoning given above).
Claim 11 is objected to because of the following informalities:
In the 6th to last line, delete “to” before “issue”.
In the 3rd to last line, insert --the-- before “program”.
In the last paragraph, there is a lack of basis for “the part of the program that requires the set of one or more processing operations to be performed” (for similar reasoning given above).
Claim 13 is objected to because of the following informalities:
The combination of all text into a single paragraph, given the punctuation, makes it difficult to determine which limitations go with which colons. The examiner recommends line brakes and indentation for improved readability. Also, in line 5, it appears the semicolon should be replaced with a comma (or applicant could insert --the execution unit-- prior to “stores”).
Claim 15 objected to because of the following informalities:
Each instance of the phrase “the part of the program…requires…” lacks basis for similar reasoning given above.
There is also a lack of basis for “the program being executed by the divergent thread” in lines 7-8.
Though claim 18 is not yet rejoined (because claim 11 is not yet allowable), the examiner recommends that applicant review for issues. For instance, there appears to be a basis issue for “the execution thread” since claim 11 has multiple execution threads. Also, in line 3, either the comma should be deleted, or “that” should be replaced with --which--.
Claim 19 objected to because of the following informalities:
Insert --and-- before “(iii)”.
In the 2nd to last line, there is a lack of basis for the first instance of “the program. It appears that this program, and all other references to this program, should be referred to as “first program”.
Claim 20 objected to because of the following informalities:
Insert --and-- before “(iii)”.
In the 2nd to last line, there is a lack of basis for the first instance of “the program. It appears that this program, and all other references to this program, should be referred to as “first program”.
All dependent claims are objected to for being dependent on an objected-to claim.
Appropriate correction is required.
Claim Interpretation
At least one claim is identified as including non-limiting contingent limitations. “The broadest reasonable interpretation of a method (or process) claim having contingent limitations requires only those steps that must be performed and does not include steps that are not required to be performed because the condition(s) precedent are not met.” “The broadest reasonable interpretation of a system (or apparatus or product) claim having structure that performs a function, which only needs to occur if a condition precedent is met, requires structure for performing the function should the condition occur. The system claim interpretation differs from a method claim interpretation because the claimed structure must be present in the system regardless of whether the condition is met and the function is actually performed.” See MPEP 2111.04(II).
Referring to claim 1, starting in line 7, when the part of the program is not being executed by a respective execution thread, then none of the claimed method steps are required. That is, under broadest reasonable interpretation (BRI), only lines 1-5 are limiting. The examiner recommends inserting an initial method step of --executing, by a respective execution thread that is being executed by a respective execution lane of the execution unit, an activation instruction in a part of a program that requires a set of one or more processing operations to be performed;--. Then, reword the next step to --in response to the respective execution thread executing the activation instruction:--. The examiner is open to alternatives, but the execution of the activation instruction in the part of the program needs to be a required step.
Further referring to claim 1, if there is no lane that is not active, then the generating in the 2nd to last paragraph is not required. The examiner recommends rewording to require this.
Further referring to claim 1, if there is no lane that has diverged, then the causing to jump never occurs. Since this paragraph is related to the allowable subject matter, it must be required by the claimed method. The examiner recommends claiming --executing, by at least one execution lane in the group of plural execution lanes, a divergent thread that has diverged from the part of the program being executed by the respective execution thread that executed the activation instruction; causing the divergent thread to jump to the part of the program…--. The examiner notes that this executing doesn’t occur in response to the activation instruction being executed and so it will have to be separate from “in response to executing the activation instruction:”.
Dependent claims 2-3, 5-7, and 19 do not set forth further limitations on the method of claim 1 if the part of the program is never executed.
Referring to claim 10, when the activation instruction is not executed (e.g. perhaps an execution thread branches around it such that it never executes), everything starting with the first “wherein…” paragraph is not required by the method. As such, under BRI, only lines 1-14 are required. Again, applicant must reword to require any step that requires the allowable subject matter to occur.
Further referring to claim 10, the last two paragraphs are not required if their respective conditions are not met (similar to claim 1).
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 5, 10, and 15 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
The claims recite the following limitations for which there is a lack of antecedent basis:
In claim 5, each instance of “the divergent thread” because there is a divergent thread in claim 1, but another in claim 5, lines 2-3.
In claim 10, in at least lines 8-9, “the group of plural execution threads”, because there are multiple such groups in lines 5 and 7. In line 7, the examiner recommends claiming “a first group of plural execution threads”, and then use this same language for subsequent references to this group.
In claim 10, last paragraph, both instances of “the part”.
In claim 10, 2nd to last line, “the program”, because there are multiple programs previously set forth. It appears applicant means --the respective program--.
In claim 15, each instance of “the divergent thread” for similar reasoning given above.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-3, 5-7, and 19 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Ben-Kiki et al., U.S. Patent Application Publication No. 2016/0283245.
Referring to claim 1, Ben-Kiki has taught a method of operating a graphics processor (FIG.1 and paragraph [0025]), the graphics processor comprising a programmable execution unit operable to execute programs to perform graphics processing operations (again, see FIG.1 and paragraph [0025], along with paragraph [0004]. An execution unit comprising at least parts of the processor elements of FIG.1 is programmed by a program to carry out graphics operations), wherein the execution unit is configured as a plurality of execution lanes (e.g. see FIGs.1 and 4. Basically, each processor element represents a lane that executes a thread), wherein individual execution threads in a group of plural execution threads can be executed by respective execution lanes (see FIG.4, and note the group comprising a master thread and helper threads, which are respectively executed by a different lane). Again, since under BRI involving contingent limitations, no method steps are required and, thus, the prior art need only teach the above to anticipate the claim.
Claims 2-3, 5-7, and 19 are rejected for similar reasoning as claim 1 (since under BRI they do not add limitations).
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 10 is rejected under 35 U.S.C. 103 as being unpatentable over Ben-Kiki in view of the examiner’s taking of Official Notice.
Claim 10 is partially rejected for similar reasoning as claim 1. Furthermore, Ben-Kiki has taught a method of compiling a program to be executed (see paragraph [0033]), the method comprising:
including in a respective program to be executed by a group of plural execution threads, an activation instruction (FIG.4, user-level fork instruction 406, executed by a master thread) that when executed by an execution thread in the group of plural execution threads will cause a group of plural execution lanes to be in an active state in which processing operations can be performed using the group of plural execution lanes together (from FIG.4, when the activation instruction is executed, the lanes are put into an active state to perform operations together); and
including in the respective program, subsequent to the activation instruction that will cause the group of plural execution lanes to be in the active state, a set of one or more instructions to cause a set of one or more processing operations to be performed using the group of plural execution lanes together (from FIG.4, the master thread 432 executes operations 450 and 452 in its lane at the same time helper threads 436 execute their respective operations 435 and 418 in their respective lanes. The instructions that carry out these operations are the set of one or more instructions).
Ben-Kiki has not taught that the program is a shader program. However, Official Notice is taken that a shader is a well-known, highly-parallel program that has many purposes in the field of graphics processing, some of which include loading/storing data for shading/lighting and texture simulation, determining pixel-related parameters, and repositioning of vertices for certain effects. As such, in order to allow Ben-Kiki’s graphics processor to be used for adjusting shading levels in graphics processing, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Ben-Kiki such that the program is a shader program.
Again, due to contingencies, the prior art only needs to teach the above to render the claim non-patentable.
Allowable Subject Matter
Claims 11-13, 15-17, and 20 are allowed over the prior art. Please address all remaining issues.
The remaining claims would be allowable over the prior art if the contingencies are removed.
Response to Amendments/Arguments
On pages 11-12 of applicant’s response, applicant argues that there is clear basis for “the group of plural execution threads”.
The examiner respectfully disagrees for reasons set forth above.
The examiner also notes that the Gifford rejections have been withdrawn. While these could still be made based on BRI, the rejections would be mostly redundant given the Ben-Kiki rejections above.
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 David J. Huisman whose telephone number is 571-272-4168. The examiner can normally be reached on Monday-Friday, 9:00 am-5:30 pm.
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.
/David J. Huisman/Primary Examiner, Art Unit 2183