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 .
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 (i.e., changing from AIA to pre-AIA ) 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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claim(s) 1 and 8-10 is/are rejected under 35 U.S.C. 103 as being unpatentable over BUXBAUM (Publication 2012/0054255) in view of KOSCHE (Publication 2008/0177756) in view of PRABHAKAR (Patent 11,126,574).
As to claim 1, BUXBAUM teaches a system for providing insight for performance debugging of dataflow graphs on an execution environment, comprising a tool configured to: generating and analyze performance data for identifying and diagnosing performance bottlenecks for providing tuning recommendations and annotating a traceable dataflow graph with runtime information ([0039-0045, 0049, 0051, 0062-0071], EN: environment has a monitor module and execution module that takes a dataflow graph and convert it for execution on the execution module wherein performance characteristics are tracked and recorded in the dataflow graph.)
However, BUXBAUM does not explicitly teach the diagnosing of performance bottlenecks is in memory bandwidth and compute resources.
KOSCHE teaches a KNOWN system for providing actionable insights for the performance debugging of dataflow graphs on an execution environment ([0260—0261]), comprising a tool configured to:
generate and analyze performance data for identifying and diagnosing performance bottlenecks in memory, bandwidth, and compute resources, and for providing tuning recommendations ([0067, 0070, 0311 - 0325]); and
provide hierarchical traceable graph transformation of dataflow graph and annotated with runtime information after the compilation and execution back onto higher levels of stack from hardware metrics 0069, 0149, 0169, 0201-0204, 0209, 0259-0260, 0306, 0311 - 0325]).
It would be obvious to one of ordinary skill in the art to apply KNOWN performance monitoring technique within the environment of BUXBAUM in order to record different types of performance bottlenecks as proper under MPEP 2143, Rationale D.
However, KOSCHE does not demonstrate the execution environment the tool operates on is a CGRA.
PRABHAKAR teaches a KNOWN performance monitoring associated with CGRA environments (col. 3, lines 4—30, col. 13, lines 18-56, col. 14, line 1-67, col. 15, lines 34-48, col. col. 16, line 9-54). It would be obvious to one of ordinary skill in the art that the KOSCHE-BUXBAUM teachings are applied to a CGRA environment in order to monitor the performance of the data graphs in a CGRA environment.
As to claim 8, KOSCHE teaches the hierarchical traceable graph transformation tool is configured for tagging and measuring various stages of computation within the execution environment, generating detailed performance reports that provide insights into execution time, latency, and throughput of different stages ([0311 - 0325]).
However, KOSCHE does not demonstrate the execution environment the tool operates on is a CGRA.
PRABHAKAR teaches a KNOWN performance monitoring associated with CGRA environments (col. 3, lines 4—30, col. 13, lines 18-56, col. 14, line 1-67, col. 15, lines 34-48, col. col. 16, line 9-54). Refer to claim 1 for the motivation to combine.
As to claim 9, KOSCHE teaches the performance monitoring and tuning tool comprises a browser-based graphical user interface (GUI) that provides intuitive, context-based navigation and interactivity, allowing users to visualize data in tabular, chart, or graph form (EN: performance data shown in a graphical format( e.g. bar graphs or histograms) and may be ordered and/or aggregated according to current presentation options and/or aggregation guidelines, [0069, 0169, 0259-0260, 0306, 0311 - 0325]). Refer to claim 1 for the motivation to combine.
As to claim 10, PRABHAKAR teaches the hierarchical traceable graph transformation tool is configured to propagate runtime profile information from the lowest level of execution on processing memory units (PMUs) and processing control units (PCUs) on the CGRA to the intermediate levels of representation, extending to the framework level neural operators (via processing of the dependencies associated with the data flow that are executed by corresponding configurable units (EN: AGs, CUs, PMUs, PCUs and recording the performance / profile information associated with stage based processing / profiling) [col. 25, line 13-67; col. 35, line 58 – col. 36, line 13]. Refer to claim 1 for the motivation to combine.
In the interest of Compact Prosecution
Currently the claims are worded from a generic performance monitoring system applied to CGR accelerators. To better illustrate the functionality of how the system is established to create the graph performance monitoring as intended, Applicant should consider amending the claims to articulate paragraphs 0083-0084.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to LEWIS ALEXANDER BULLOCK JR whose telephone number is (571)272-3759. The examiner can normally be reached Monday-Friday, 9:00-5:00 pm.
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, Cordelia Zecher can be reached at 571-272-7771. 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.
/LEWIS A BULLOCK JR/Supervisory Patent Examiner, Art Unit 2199