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 .
Detail Action
This office action is in response to the application filed on 12/04/2023.
Claims 1-20 are pending.
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.
Claim 9-15 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter. The claim(s) does/do not fall within at least one of the four categories of patent eligible subject matter because the claimed instructions are interpreted as software and software does not fall into any of statutory subject matter.
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.
Claim(s) 1-2, 4, 9-10, 12, 16-17 and 19 is/are rejected under 35 U.S.C. 102(a)(a) as being anticipated by Silvera et al. (US 2009/0077545 A1).
Per claim 1,
Silvera discloses
receiving, by a compiler of a host of a computing system, input code; (Fig. 3, [0040-44] discloses a compiler for compiling input code)
generating, by the compiler, pipelined input code by adding first tokens in a loop iteration argument field of a loop in the input code to pipeline the loop, the first tokens configured to sequentialize and serialize loop operations, a quantity of the first tokens based on a quantity of pipeline stages; ([0046], discloses multi stage process for pipelined parallelization and synchronization instructions are inserted for every data dependence relation in a loop. [0073]-[0076], Fig. 6 and 7, WAIT(I-2) and POST(I) where I is considered token in argument field of a loop operation. Similarly, see FIG. 8 and Fig. 9 where I and J are used in argument field of WAIT() and POST(). Fig. 7, 700, between 702 and 704 operations are executed sequentially.) and providing, by the host, the pipelined input code to a controller of an integrated circuit (IC) of the computing system. ([0044], executable running on a computer)
Per claim 2, the rejection of claim 1 is incorporated.
Silvera discloses
generating, by the compiler, asynchronous input code prior to generating the pipelined input code by adding second tokens to the loop iteration argument field, the second tokens configured to be passed sequentially through operations of the loop to provide asynchronous concurrency; and generating the pipelined input code by replacing the second tokens with the first tokens in the loop iteration argument field. (Fig. 9, where I is first token and J being second token. [0077]-[0082], discloses WAIT and POST algorithms inserted into loop as synchronization mechanism.)
Per claim 4, the rejection of claim 1 is incorporated.
Silvera discloses
wherein generating the pipelined input code comprises modifying a body of the loop so that execution of each loop operation is dependent on receipt of at least one of the first tokens. (Silvera, see [0073], see using compiler to insert WAIT() and POST() corresponding to modifying body of loop)
Per claims 9-10 and 12, see rejection of claims 1-2 and 4.
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) 3, 11 and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over by Silvera et al. (US 2009/0077545 A1) in view of Lucia et al. (US 2025/0190189 A1)
Per claim 3, the rejection of claim 2 is incorporate.
Silvera does not, however Lucia discloses
wherein generating the asynchronous input code comprises inserting the second tokens in the loop iteration argument field based on loop-carried dependencies in the loop. ([0047], discloses inserting carry operation for loop-carries dependence)
Therefore, it would have been obvious to a person of ordinary skill before the effective filing date of the invention to incorporate the teachings of Lucia into the teachings of Silvera to include the limitation disclosed by Lucia. The modification would be obvious to one of ordinary skill in the art to want to ensure order of operation to ensure producing correct result as suggested by Lucia ([0043])
Per claims 11 and 18, see rejection of claim 3.
Claim(s) 5, 13 and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over by Silvera et al. (US 2009/0077545 A1) in view of Kruglick (US 2011/0088021 A1)
Per claim 5, the rejection of claim 1 is incorporate.
Silvera does not, however, Kruglick discloses
wherein generating the pipelined input code comprises unrolling the loop into N memory blocks, wherein N is an integer equal to the quantity of the pipeline stages. ([0035] discloses parameter including memory block associated with loop unrolling. Loop unrolling inherently including N memory blocks. For example, unrolling a loop with 100 iterations into 10x10 would disclose N memory blocks. )
Therefore, it would have been obvious to a person of ordinary skill before the effective filing date of the invention to incorporate the teachings of Kruglick into the teachings of Silvera to include the limitation disclosed by Kruglick. The modification would be obvious to one of ordinary skill in the art to want to improve optimization to speed up execution as suggested by Kruglick ([0025])
Per claims 13 and 20, see rejection of claim 5.
Claim(s) 7 and 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over by Silvera et al. (US 2009/0077545 A1) in view of Kruglick (US 2011/0088021 A1) and further in view of (Lucia et al. (US 2025/0190189 A1).
Per claim 7, the rejection of claim 5 is incorporated.
Silvera/Kruglick does not, however, Lucia discloses
wherein generating the pipelined input code further comprises generating a producer thread and a consumer thread for each pipeline stage. (Lucia et al. (US 2025/0190189 A1) , [0044], discloses control dependence graph with consumer and producer )
Therefore, it would have been obvious to a person of ordinary skill before the effective filing date of the invention to incorporate the teachings of Lucia into the teachings of Silvera/Kruglick to include the limitation disclosed by Lucia. The modification would be obvious to one of ordinary skill in the art to want to effectively execute deeply nested loops with complext control flow can be supported by small fabric as suggested by Lucia([0012])
Per claim 15, see rejection of claim 7.
Claim(s) 8 is/are rejected under 35 U.S.C. 103 as being unpatentable over by Silvera et al. (US 2009/0077545 A1) in view of (Lucia et al. (US 2025/0190189 A1).
Per claim 8, the rejection of claim 1 is incorporated.
Silvera does not, however, Lucia discloses
generating, by the compiler, a control and dataflow graph (CDFG) representing the pipelined input code, the CDFG including dependency edges that connect loop operations to one another, and wherein providing, by the host, the pipelined input code to the controller of the IC of the computing system comprises the host providing the CDFG to the controller ( [0034-38], discloses dataflow graph (DFG))
Therefore, it would have been obvious to a person of ordinary skill before the effective filing date of the invention to incorporate the teachings of Lucia into the teachings of Silvera to include the limitation disclosed by Lucia. The modification would be obvious to one of ordinary skill in the art to want to effectively execute deeply nested loops with complex control flow can be supported by small fabric as suggested by Lucia([0012])
Allowable Subject Matter
Claims 6 and14 objected to as being dependent upon a rejected base claim but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
It is noted that any citation [[s]] to specific, pages, columns, lines, or figures in the prior art references and any interpretation of the references should not be considered to be limiting in any way. A reference is relevant for all it contains and may be relied upon for all that it would have reasonably suggested to one having ordinary skill in the art. [[See, MPEP 2123]]
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Philip Wang whose telephone number is 571-272-5934. The examiner can normally be reached on Monday – Friday 8:00AM -4:00PM. Any inquiry of general nature or relating to the status of this application should be directed to the TC2100 Group receptionist: 571-272-2100.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Lewis Bullock, can be reached at 571-272-3759. 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 the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR
system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
/PHILIP WANG/Primary Examiner, Art Unit 2199