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 .
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 .
Claims 1-47 are presented for the examination.
Double Patenting
3. The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the "right to exclude" granted by a patent and to prevent possible harassment by multiple assignees. See In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970);and, In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the conflicting application or patent is shown to be commonly owned with this application. See 37 CFR 1.130(b).
Effective January 1, 1994, a registered attorney or agent of record may sign a terminal disclaimer. A terminal disclaimer signed by the assignee must fully comply with 37 CFR 3.73(b).
4. Claims 1-10, 21-47 are provisionally rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1-47 of copending Application No. 17/572385. Although the conflicting claims are not identical, they are not patentably distinct from each other because both computer systems comprise substantially the same elements the Application No. 17/572385 teaches one or more circuits to perform an application programming interface ("API") which of one or more graph code are to be performed ( one or more circuits to perform an application programming interface ("API") which of one or more portions of graph code are to be performed). The difference between claims 1,11, 21, 31, 39 of the copending application and this case is in response to an application programming interface ("API") call, provide an execution status to indicate which of one or more graph nodes of graph code to a memory location specified using the API call, the execution status indicating whether the one or more graph nodes are to be performed enabled or disabled. It would have been obvious to one of the ordinary skill level in the art to include above feature since it was well known at the time of the invention to allow combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
5. Claims 1-47 are provisionally rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1-39 of copending Application No. 17/582850. Although the conflicting claims are not identical, they are not patentably distinct from each other because both computer systems comprise substantially the same elements the Application No. 17/582850 teaches one or more circuits to perform an application programming interface ("API") which of one or more graph code are to be performed ( one or more circuits to perform an application programming interface ("API") which of one or more portions of graph code are to be performed). The difference between claims 1,12, 21, 30 of the copending application and this case is in response to an application programming interface ("API") call, provide an execution status to indicate which of one or more graph nodes of graph code to a memory location specified using the API call, the execution status indicating whether the one or more graph nodes are to be performed enabled or disabled. It would have been obvious to one of the ordinary skill level in the art to include above feature since it was well known at the time of the invention to allow combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
6. Claims 1-47 are provisionally rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1-24 of copending Application No. 17/720243. Although the conflicting claims are not identical, they are not patentably distinct from each other because both computer systems comprise substantially the same elements the Application No. 17/582850 teaches one or more circuits to perform an application programming interface ("API") whether one or more portions of graph code are to be performed ( one or more circuits to perform an application programming interface ("API") which of one or more graph code are to be performed). The difference between claims 1, 7, 13, 19 of the copending application and this case is in response to an application programming interface ("API") call, provide an execution status to indicate which of one or more graph nodes of graph code to a memory location specified using the API call, the execution status indicating whether the one or more graph nodes are to be performed enabled or disabled. It would have been obvious to one of the ordinary skill level in the art to include above feature since it was well known at the time of the invention to allow combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
7. Claims 1-47 are provisionally rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1-20 of copending Application No. 17/720243. Although the conflicting claims are not identical, they are not patentably distinct from each other because both computer systems comprise substantially the same elements the Application No. 17986636 teaches one or more circuits to perform an application programming interface ("API") whether one or more portions of graph code ( one or more circuits to perform an application programming interface ("API") which of one or more graph code are to be performed). The difference between claims 1, 8, 15 of the copending application and this case is an application programming interface ("API") to indicate which of whether one or more graph nodes portions of graph code are to be performed by one or more graphics processing units (GPU. It would have been obvious to one of the ordinary skill level in the art to include above feature since it was well known at the time of the invention to allow combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
8. Claims 1-47 are provisionally rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1-20 of copending Application No. 17718065. Although the conflicting claims are not identical, they are not patentably distinct from each other because both computer systems comprise substantially the same elements the Application No. 17986636 teaches one or more circuits to perform an application programming interface ("API") whether one or more portions of graph code ( one or more circuits to perform an application programming interface ("API") which of one or more graph code are to be performed). The difference between claims 1, 7, 13, 19 of the copending application and this case is an application programming interface ("API") to is indicate which of whether one or more graph nodes portions of graph code are to be performed by one or more graphics processing units (GPU. It would have been obvious to one of the ordinary skill level in the art to include above feature since it was well known at the time of the invention to allow combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
9. Claims 11-20 are provisionally rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1-47 of copending Application No. 17/572385. Although the conflicting claims are not identical, they are not patentably distinct from each other because both computer systems comprise substantially the same elements the Application No. 17/572385 teaches indicate an execution status of at least one graph node wherein the execution status indicates whether the at least one graph node is enabled or disabled. The difference between claims 1,11, 21, 31, 39 of the copending application and this case is providing the execution status of the at least one graph node. It would have been obvious to one of the ordinary skill level in the art to include above feature since it was well known at the time of the invention to allow combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
.
§ 101 2. 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, 2, 3, 11, 23, 40, 41 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more.
As to Claims 1, 2, 3, 11, 23, 40, 41 have been rejected under 35 USC 101 for abstract idea without significantly more. Under Step 2A, Prong 1, the “ indicating whether the one or more graph nodes are to be performed enabled or disabled for execution ” , “ specifies the graph code, ]the one or more graph nodes of the graph code, and a memory location to receive an execution status of the one or more graph code”, “ indicate an execution status of at least one graph node of graph recite a mental process” since “ indicate”, “ specify” are functions that can be reasonably performed in the human mind with the aid of pen and paper through observation, evaluation, judgment, opinion.
Under Prong 2, the additional element “ in response to an application programming interface ("API") call, provide an execution status to indicate which of one or more graph nodes of graph code to a memory location specified using the API call “, “ graph code are to be performed by one or more graphics processing units (GPU)” , “ the execution status indicates whether the at least one graph node is enabled or disabled; and in response to the API call, providing the execution status of the at least one graph node” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer component, or merely a generic computer or generic computer components to perform the judicial exception, Accordingly, the additional elements do not integrate the recited judicial exception into a practical application, and the claim is therefore directed to the judicial exception. See MPEP 2106.05(f).
Under Step 2B, the additional elements “ graph code are to be performed by one or more graphics processing units (GPU)” - this generally have been a mental process although the graph code could be a generic computer component in actual computer hardware.
“ in response to an application programming interface ("API") call, provide an execution status of one or more graph nodes of graph code to a memory location specified using the API call,”- this is mere instructions to apply the mental process under mpep 2106.05(f), amounts to merely generally linking the use of the judicial exception to a particular technological environment or field or use, and is merely applying the judicial exception, therefore, does not amount to significantly more, hence, cannot provide an inventive concept.
14. The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application. See MPEP 2106.05(d). Thus, the claim is not patent eligible.
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) 1, 21, 27, 28, 31, 39 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) and further in view of Sunada( US 8589441 B1).
As to claim 1 , Kovvuri teaches One or more processors A processor comprising: one or more circuits circuitry, an application programming interface ("API") to indicate which one or more graph nodes are to be performed by one or more graphics processing units (GPU) ( general-purpose processors (including processors implementing vector instruction sets), custom integrated circuits, application-specific integrated circuits (ASICs), para[0022], ln 12-19/ define a topology of the graph of a given neural network model, para[0078], ln 12-16/ a subgraph 320 of the neural network model 310 is identified by a dashed circle. As illustrated, the subgraph 320 includes neural nodes 321-323 and 330-331. Inputs to the subgraph 320 are generated by the neural nodes 305-306. The neural nodes 321-323 form a first layer of the subgraph 320, para[0064], ln 1-7/ The subgraph 320 can be identified in a number of different ways. For example, a compiler can identify the subgraph. As another example, a user can identify a subgraph using a graphical tool, by using one or more predefined application programming interfaces (APIs) to specify the neural network, and/or by providing markers (e.g., marker nodes) in a coding language for the neural network to indicate boundaries of the subgraph. Once the subgraph 320 has been identified, the neural network model 310 can be partitioned such that the subgraph 320 is evaluated with a neural network hardware accelerator. For example, the subgraph 320 can be mapped to specialized neural network hardware implemented with an FPGA, an ASIC, a neural network processor, a digital signal processor, a graphics processing unit (GPU), para[0066] to para[0067]/ The hardware accelerator (e.g., the GPU and/or the programmable hardware), para[0019], ln 16-18).
Lange teaches in response to an application programming interface ("API") , one or more graph nodes are to be performed by one or more graphics processing units (GPU)( the one or more function calls including a first function call which, when executed by the one or more processors, causes the one or more processors to perform one or more predetermined actions associated with a node of a conversation graph specified in the function call, para[0007], ln 5-10/ the GAIN system can update the state of the conversation graph to indicate that the current node in the conversation graph is the node specified in the function call and perform the one or more predetermined actions corresponding to the current node in the conversation graph, para[0092]/ The processor(s) 913 can include one or more central processing units (CPUs), graphic processing units (GPUs), para[0149], ln 9-14).
It would have been obvious to one of the ordinary skill in the art before the effective of claimed invention was made to modify the teaching of Kovvuri with Lange to incorporate the above feature because this enables the agent to more accurately and efficiently execute tasks to assist users in a variety of different use cases.
De teaches in response to an application programming interface ("API") call, provide an execution status of one or more graph nodes of graph code to a memory location specified using the API call( The resulting plurality of abstract syntax trees 101 of the source code fragment comprising functions f, g and h is shown in FIG. 1, col 5, ln 20-25/ When performing a remote function call, an identifier for the function to be executed by the co-processor is passed as a parameter, col 8, ln 40-45/ the set of parameters of the remote function call further comprises a reference to a memory location used for storing information on the return status of the function to be called, col 4, ln 2-6/ wherein the interface comprises a remote function call, the remote function call having a set of parameters, the set of parameters comprising an identifier for the function to be called, at least one reference pointing to the input data of the function to be called, at least one reference pointing to the result data of the function to be called, and a reference pointing to a memory location used for storing information on the return status of the function to be called, col 12,l n 28-40).
It would have been obvious to one of the ordinary skill in the art before the effective of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
Sunada teaches the execution status indicating whether the one or more graph nodes are to be performed enabled or disabled( processing system 1 having a hierarchical file management structure including the plurality of edge nodes 10 and the core node 20 communicatively coupled to all the edge nodes 10 can make use of the foregoing mechanism as follows. , col 6, ln 1-6/ the core node 20 and the edge nodes 10 each have functions as a file server that manages data of files (including metadata and entity data, and hereinafter simply referred to as "file data") to be provided to the client apparatuses 2, col 3, ln 43-47/ In the case of the core node 20 configured as a disk array apparatus, the core node 20 further includes, for example, a high-speed data transfer device (DMA), a cache memory, a channel controller (communication processor and protocol processor), a disk controller (drive controller), a RAID controller, a high-speed communication switch (crossbar switch or the like) and the like, col 8,l ln 21-29/ The storage apparatus 23 is, for example, a semiconductor memory, a hard disk drive, or a semiconductor storage device, col 8, ln 15-20/ The storage apparatus 23 of the core node 20 stores therein programs and various kinds of data for implementation of functions of the core node 20 by the central processing device 21. As shown in FIG. 6, the storage apparatus 23 stores therein, as main programs, a kernel driver 231, a file system 232, a file data acquisition PG 233, a file data provision PG 234, and a resource information acquisition PG 235. In addition, the storage apparatus 23 stores therein, as main data, a resource information collection schedule 241, edge node resource information 242 and edge node account information 243, col 8, ln 28-40/ FIG. 17 shows an example of the edge node resource information 242. As shown in FIG. 17, the edge node resource information 242 is a set of records each having items of an edge node ID 2421, an access right 2422, an operation status 2423, col 13, ln 56-61/ The operation status 2423 is set with information indicating the operation status of the edge node 10 ("Active" indicating that the edge node 10 is operating or "Inactive" indicating that the edge node 10 is stopped), col 14, ln 2-7).
It would have been obvious to one of the ordinary skill in the art before the effective of claimed invention was made to modify the teaching of above references to incorporate the above feature because this provides a set with information indicating a transmission capacity of the communication device.
As to claim 21, it is rejected for the same reason as to claim 1 above. In additional, Kovvuri teaches more processors and memory 9, para[0047], ln 1-5).
As to claim 27, Lange teaches one or more processors is a central processing unit ("CPU")( para[0149], ln 9-14) for the same reason as to claim 1 above.
As to claim 28, Lange teaches least one of the one or more processors is a graphics processing unit ("GPU")(para[0149], ln 9-14) for the same reason as to claim 1 above .
As to claims 31, 39, they are rejected for the same reason as to claim 1 above. In additional, Kovvuri teaches non-transitory machine-readable medium, a processor( , computer-readable media include memory 1420 and/or storage 1440. As should be readily understood, the term computer-readable storage media includes the media for data storage such as memory 1420 and storage 1440, and not transmission media such as modulated data signals, para[0143], ln 3-9/ a computer-readable memory stores computer-executable instructions that when executed by a processor, cause the processor to perform a method, para[0145], ln 1-5).
Claim(s) 2, 22, 32, 40, 41, 46, 47 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Wells(US 20170344605 A1).
As to claim 2, Wells teaches the API at least specifies the graph code, a graph node of the graph code, and an execution status for the graph node( allows API service 132 to respond to requests by identifying nodes in the graph projection of the API , para[0030], ln 6-10, API service 132 can generate a graph projection of the API including any extensions usable by the specific client device, para[0053], ln 11-15/ API service 132 can generate a graph projection of the API including any extensions usable by the specific client device. If an application executing on client device 120 attempts to use an API extension that is not included in the graph projection (e.g., an API extension that is not available for use by client device 120), API service 132 can generate an error to indicate that the requested API extension is not available for use by client device 120, para[0053], ln 10-17).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this facilitates the emulation of other instruction sets.
As to claim 22, Wells teaches wherein the API includes one or more parameters that at least indicate the graph code, a graph node of the graph code, and an execution status for the graph node( para[0053]) .
As to claim 32, Wells teaches the API at least indicates the graph code, a graph node of the graph code, and an execution status for the graph node( para[0053]).
As to claim 40, Wells teaches wherein the API includes one or more parameters that at least indicate the graph code, a graph node of the graph code, and an execution status for the graph node( para[0053]) .
As to claim 41,it is rejected for the same reason as to claim 3 above. In additional, Wells teaches the API includes one or more parameters that at least indicate the graph code, a graph node of the graph code( para[0022]).
As to claim 46, Well teaches the API returns an indication of failure( para[0053], ln 10-17).
As to claim 47, Wells teaches the API returns an error status( para[0053], ln 10-17).
17. Claim(s) 3, 23, 33 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) in view of Wells(US 20170344605 A1) further in view of VENKATESH( US 20210382765 A1).
As to claim 3, Wells teaches the API at least specifies the graph code, a graph node of the graph code(allows API service 132 to respond to requests by identifying nodes in the graph projection of the API , para[0030], ln 6-10, API service 132 can generate a graph projection of the API including any extensions usable by the specific client device, para[0053], ln 11-15) for the same reason as to claim 2 above .
VENKATESH teaches memory location to receive an execution status of the graph node( Application 1608A can submit APIs in a graphics stream for processing by driver 1606, para[0192], ln 1-3/ application 1608A can insert DDIs to record a pipeline 3D state of a graphics pipeline in a state buffer 1614 in memory 1610 and can mark a current location of an API command added by application 1608A in queue 1612 as a potential queue split point with driver 1606, para[0194], ln 4-12).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of memory location to receive an execution status of the graph node because this facilitates the emulation of other instruction sets.
As to claim 23, it is rejected for the same reason as to claim 3 above. In additional, Wells teaches the API includes one or more parameters that at least indicate the graph code, a graph node of the graph code( para[0022]).
As to claim 33, it is rejected for the same reason as to claims 3, 23 above.
18. Claim(s) 4, 24, 34, 45 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Manion(US 20040111469 A1).
As to claim 4, Manion teaches the API returns an indication of success( o initiate shut down, the application calls the Peer Graph Shutdown function. This function cleans up any resources allocated by the call to the API Peer Graph Startup. As indicated above, there is preferably one call to Peer Graph Shutdown for each call to Peer Graph Startup. There are no required parameters for this function. This function returns an indication of success or failure of the shutdown function. In the case of error, the function returns an appropriate error code, para[0046]/ The graphing APIs of the present invention also allow the management and communication of presence information related to the node. The peer graph set presence API is used to inform other graph members that a node is actively connected and listening to the graph. The parameters of this API are the graph handle, and a flag that, if true, floods information to that graph that the node is "present." This API returns an indication of success or failure. The error indications include an indication of an error due to an invalid argument, and if not initialized, para[0092]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows the management and communication of presence information related to the node .
As to claims 24, 34, 45, they are rejected for the same reason as to claim 4 above.
19. Claim(s) 5, 6, 25, 26, 35, 36, 42, 43 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of EVANS(US 20200053025 A1).
As to claim 5, EVANS teaches the one or more circuits further perform instructions to enable a graph node of the graph code(The first request is received from the controller component via the application programming interface, and causes the graph configuration component to generate a plurality of second requests, and each respective one of said second requests is to at least one of create, read, update and delete a respective different node in the graph structure, para[0022]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of the one or more circuits further perform instructions to enable a graph node of the graph code because this provides a more flexible and scalable environment within which to build data plane solutions than is possible with known programmable data plane technologies.
As to claim 6, EVANS teaches the one or more circuits further perform instructions to disable a graph node of the graph code( para[0022]) for the same reason as to claim 5 above.
As to claims 25, 26, 35, 36, they are rejected for the same reasons as to claims 14, 15, 5 above.
As to claim 42, EVANS teaches the one or more parameters at least include a parameter indicating a graph node of the graph code to enable(The API provided by processing application API component 309 may be RESTful and is comprised of a set of operations to be performed on a set of application-specific resources, such as interfaces, switch forwarding tables and forwarding entries, or routing tables and individual routes. Application resources typically have a set of configuration parameters which are unique for each instance of the resource, and the operations that can be performed may include create, read, update and/or delete (“CRUD”). As shown, the controller component 303 sends application resource requests, specifying the above- mentioned operations to be performed by the processing application API component 309 via data connection 311. The processing application API component 309 in turn sends graph object and action object requests to the packet processing component 305 via data connection 313, para[0040], In 10-26) for the same reason as to claim 5 above .
As to claim 43, Sunada teaches execution state indicating a graph node of the graph code to disable( col 14, ln 2-7 )and EVANS teaches the one or more indicating a graph node of the graph code to disable( para[0040], In 10-20) for the same reason as to claim 5 above .
20. Claim(s) 7, 37 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of BONFIGLIO( US 20210365410 A1).
As to claim 7, BONFILIO teaches the graph code is an instantiation of a graph template( application graph 208 that provides API call templates, para[0091], ln 7-10).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of the graph code is an instantiation of a graph template because this helps organizations automate and measure marketing engagement, tasks and workflows.
As to claim 37, it is rejected for the same reason as to claim 7 above.
21. Claim(s) 8, 38 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) further in view of WOODSIDE(CA 2216667 A1).
As to claim 8, WOODSIDE teaches the graph code is defined by a superset graph template( An example is shown in Fig. 15, where: the initiating task (Task A) sends an RPC request and blocks, the first responding task (Task B) processes the request, and forwards it to another responding task (Task C), Task C processes the request further and forwards it to Task D which replies to the initiating task. A proper time model is analyzed or translated into a domain specific model. An 25 analysis is done by first describing the properties to be assessed as a sub-graph template, Sec: An example is shown in Fig. 15, ln 1-15).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of the graph code is defined by a superset graph template because this allows for a directed optimization effort at points where the software executes slowest or where execution will benefit most.
As to claim 38, it is rejected for the same reason as to claim 8 above.
22. Claim 9 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Van Wie( US 20100146085 A1).
As to claim 9, Van teaches API is a driver API( A device driver typically provides an API for functions that can be invoked by calls made by software processes in order to translate commands and data that are transferred between the software processes and the hardware device, para[0177]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of API is a driver API because this supports Realtime communications between communicants operating on respective network nodes.
23. Claim 10 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Dubey(US 11210143 B1).
As to claim 10, Dubey teaches api runtime( calls to a runtime API of the workflow platform to update the workflow (e.g., updating the workflow graph and/or context of the workflow) maintained by the workflow platform, col 3, ln 28-32).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of API runtime because this provides techniques for a workflow platform enabling parallel execution of workflow steps of a workflow.
24. Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy ( US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) and further in view of Sunada( US 8589441 B1).
As to claim 11, Veeraswamy teaches A computer-implemented method, comprising: receiving an application programming interface ("API") call to indicate an execution status of at least one graph node of graph code to be performed by one or more processors( the data processor executing computer instructions stored on a non-transitory computer readable storage medium to perform the steps of: (a) parsing records in the log of transactions not-yet-completed by the time of the re-boot in order to create a dependency graph of dependencies between the not-yet-completed transactions; and then (b) performing a background task of replay of the not-yet-completed transactions in a time order sequence, and concurrent with the background task of replay of the not-yet-completed transactions in the time order sequence, col 13, ln 42-57/ FIG. 4 shows a preferred format of a dependency graph 38 for the not-yet-completed transactions in the transaction log of FIG. 3. The dependency graph 38 includes a directed acyclic graph 39 having a time-ordered series of nodes 62 for the not-yet-completed transactions in the transaction log, so that each not-yet-completed transactions in the transaction log has a respective unique node (shown as an oval) in the directed acyclic graph , col 8, ln 25-35/ the depth-first search of the dependency graph is performed by calling a recursive subroutine[API] that searches nodes of the dependency graph that are linked to a specified node by edges of the dependency graph that point from the specified node. The recursive subroutine[API] does this search by calling itself for each of the nodes pointed to by edges that point from the specified node, and then replaying the not-yet-completed transaction corresponding to the specified node. FIG. 10 shows the recursive subroutine (called in step 108 of FIG. 9) for recovering the transaction of a specified node and recovering any and all not-yet-completed supporting transactions. In a first step 110, if the specified node has a state of "recovered", then execution returns. Otherwise, execution continues to step 111. In step 111, if the specified node has a recovery state of "in progress," then execution continues to step 112 to suspend and resume execution, and then execution loops back to step 110. In this case, once the "in progress" recovery has been completed, execution will return from step 110, col 12, ln 3-21).
Manion teaches receiving an application programming interface ("API") call to indicate an execution status of at least one graph node of graph code( application programming interfaces (APIs) are provided that allow a node to enumerate all nodes in a graph and that allow a node to set its presence in the graph, para[0015], ln 1-6/ The peer graph set presence API is used to inform other graph members that a node is actively connected and listening to the graph. The parameters of this API are the graph handle, and a flag that, if true, floods information to that graph that the node is "present." This API returns an indication of success or failure. The error indications include an indication of an error due to an invalid argument, and if not initialized, para[0092])
wherein the execution status indicates whether the at least one graph node is enabled or disabled(allows for the retrieval of the status of the group through a call[API] to the peer graph get status function. The parameters for this function are the handle to the group, and a set of peer graph status flags that are currently set as the status of the group. These flags may be used to indicate whether or not the node is listening for connections, whether or not the node has connections to other nodes, and whether or not the node's database is synchronized, para[0072]),
and in response to the API call, providing the execution status of the at least one graph node ( The graphing APIs of the present invention also allow the management and communication of presence information related to the node. The peer graph set presence API is used to inform other graph members that a node is actively connected and listening to the graph. The parameters of this API are the graph handle, and a flag that, if true, floods information to that graph that the node is "present." This API returns an indication of success or failure. The error indications include an indication of an error due to an invalid argument, and if not initialized, para[0092]/ The graphing APIs allow an application to establish a connection with a node in the graph in order to send data. This connection does not count towards graph maintenance. The parameters for this API include the handle of the graph, the unique ID of a person to whom to connect at an address (required since multiple identities may be connected at the specified address), a pointer to structure containing details about address, etc. of the node to which to connect, and the connection ID of this direct connection. This API returns an indication of success or failure. The error indications include an indication of an error due to an invalid argument, and if no peer with the given ID exists. There may also be an error to denote that the peer node refused the connection, para[0101]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this provides an indication as to the problem resulting in the failure.
De teaches provide an execution status of one or more graph nodes of graph code to a memory location specified using the API call( The resulting plurality of abstract syntax trees 101 of the source code fragment comprising functions f, g and h is shown in FIG. 1, col 5, ln 20-25/ When performing a remote function call, an identifier for the function to be executed by the co-processor is passed as a parameter, col 8, ln 40-45/ the set of parameters of the remote function call further comprises a reference to a memory location used for storing information on the return status of the function to be called, col 4, ln 2-6/ wherein the interface comprises a remote function call, the remote function call having a set of parameters, the set of parameters comprising an identifier for the function to be called, at least one reference pointing to the input data of the function to be called, at least one reference pointing to the result data of the function to be called, and a reference pointing to a memory location used for storing information on the return status of the function to be called, col 12,l n 28-40).
It would have been obvious to one of the ordinary skill in the art before the effective of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows combining flexibility and speed for execution of a set of functions and allows making an optimal design of the target system as well.
Sunada teaches the execution status indicating whether the one or more graph nodes are to be performed enabled or disabled( processing system 1 having a hierarchical file management structure including the plurality of edge nodes 10 and the core node 20 communicatively coupled to all the edge nodes 10 can make use of the foregoing mechanism as follows. , col 6, ln 1-6/ the core node 20 and the edge nodes 10 each have functions as a file server that manages data of files (including metadata and entity data, and hereinafter simply referred to as "file data") to be provided to the client apparatuses 2, col 3, ln 43-47/ In the case of the core node 20 configured as a disk array apparatus, the core node 20 further includes, for example, a high-speed data transfer device (DMA), a cache memory, a channel controller (communication processor and protocol processor), a disk controller (drive controller), a RAID controller, a high-speed communication switch (crossbar switch or the like) and the like, col 8,l ln 21-29/ The storage apparatus 23 of the core node 20 stores therein programs and various kinds of data for implementation of functions of the core node 20 by the central processing device 21.As shown in FIG. 6, the storage apparatus 23 stores therein, as main programs, a kernel driver 231, a file system 232, a file data acquisition PG 233, a file data provision PG 234, and a resource information acquisition PG 235. In addition, the storage apparatus 23 stores therein, as main data, a resource information collection schedule 241, edge node resource information 242 and edge node account information 243, col 8, ln 28-40/ FIG. 17 shows an example of the edge node resource information 242. As shown in FIG. 17, the edge node resource information 242 is a set of records each having items of an edge node ID 2421, an access right 2422, an operation status 2423, col 13, ln 56-61/ The operation status 2423 is set with information indicating the operation status of the edge node 10 ("Active" indicating that the edge node 10 is operating or "Inactive" indicating that the edge node 10 is stopped), col 14, ln 2-7)
It would have been obvious to one of the ordinary skill in the art before the effective of claimed invention was made to modify the teaching of above references to incorporate the above feature because this provides a set with information indicating a transmission capacity of the communication device.
25. Claim 12 is rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy(US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of PANNEER( US 20140281615 A1).
As to claim 12, Panneer teaches GPU work queue 210 may store one or more tasks 212( para[0030], ln 8-12/ The API 204 may communicate the request to the graphics driver module 206 to determine the completion status of the task 212, para[0044], ln 10-14).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows a reader to quickly ascertain the nature of the technical disclosure.
26. Claim 13 is rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy(US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Clarke(US 20180260300 A1).
As to claim 13, Clarke teaches the API comprises a runtime API( Enhanced policy editor 112 parses the content retrieved by the REST API calls and populates lists of choices for the policy definition. Enhanced policy editor 112 may apply type or predicate filtering to the content before populating a list of choices. Enhanced policy editor 112 sets up callbacks for runtime objects that the policy references. Enhanced policy editor 112 also builds a dependency analysis tree for each runtime object. Once a policy built with enhanced policy editor 112 is in place, or while a user is editing a policy built using enhanced policy editor 112, enhanced policy editor 112 can receive a notification of a change of one or more of the runtime objects referenced by the policy. Enhanced policy editor 112 then runs a validation against the affected objects. If any of the objects have become invalid due to the change, enhanced policy editor 112 marks the objects as invalid and outputs the results of the validation. In the depicted embodiment, enhanced policy editor 112 includes components that perform the various functions, para[0015], ln 14-30/ enhanced policy editor 112 invokes one or more REST APIs, such as REST API 124, para[0039], ln 1-5).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this provides an indication as to the problem resulting in the failure.
27. Claims 14, 15 are rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy(US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Wiegley( US 20220236976 A1).
As to claim 14, Wieghley teaches the graph code is defined by a superset graph template( generates a second set of pipelines from the plurality of partially hydrated pipeline templates including the regenerated partially hydrated pipeline template and one or more partially hydrated templates generated before the change in metadata. Para[0031], ln 27-33).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows organizations to simplify software deployment process and manage applications, firewalls, clusters, servers, load balancers, and other computing infrastructure on the cloud platform.
As to claim 15, Wiegly teaches the graph code is an instantiation of a graph template( para[0031], ln 27-33) for the same reason as to claim 14 above.
28. Claim 16 is rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy(US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Takeda( US 20200310937 A1).
As to claim 16, Takeda teaches the at least one graph node is disabled or enabled in response receiving another API call( FIG. 2 shows a data structure of an example of the storage 15. The storage 15 stores an operating system (OS) 151, an application 152, an image processing library 153, an RPC (Remote Procedure Call) library 154, para[0035], ln 1-6/ the image processing library 153 includes a node creation APT 1531, an RPC node creation API 1532, a graph creation API 1533, an execution API 1534, para[0038], ln 5-9/ The execution API 1534 is an API for executing the processes of the all-node graph, para[0044]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allocates a node to a thread in a thread pool, and executes the process of the RPC node of graph.
29. Claim(s) 17 is rejected under 35 U.S.C. 103 as being unpatentable over Manion( US 20040111469 A1) in view of Veeraswamy(US 8977898 B1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) in Takeda( US 20200310937 A1) and further in view of Wells(US 20170344605 Al).
.
As to claim 17, Takeda teaches a graph node of the graph code to enable (The execution API 1534 is an API for executing the processes of the all-node graph, para[0044]) for the same reason as to claim 16 above.
Wells teaches determining a graph node of the graph code to enable( The API exposed at application gateway 130 may have a root node, and each request for data interaction (e.g., read, write, data processing requests) using the API may be defined and verified in relation to an access route from the root node. For example, a valid request may be defined as a continuous path through the graph representation of the API, para[0031]/ because multiple paths may exist in a graph projection of the API to a specified node, the context in which API service 132 performs a request on the specified node may change based on the navigable path identified in the request, para[0034]) , based at least in part on the API; determining whether the graph node is disabled( If API service 132 detects that one of the subqueries is not accessible (e.g., the node identified in the subquery is not an immediate child of the node identified in a previous subquery), API service 132 can stop processing the query and notify client device 120 that the received query is invalid, para[0023],ln 21-27/ using the API may be defined and verified in relation to an access route from the root node. For example, a valid request may be defined as a continuous path through the graph representation of the API, while an invalid request may be defined as a discontinuous path through the graph representation of the API, para[0031]); determining previously defined functionality of the graph node based at least in part on an execution graph template( request router 620 can examine provider information included in the schema definition for the node representing the subquery. The provider information generally includes an address (e.g. URL) of the server that can process requests for data related to the node in graph projection 200 of the API, para[0079]/ para[0058]; restoring a descriptor of the graph node( and as API service 132 reads schema definitions for each node, API service 132 can add an identifier representing the node (e.g., the node name) to an appropriate place (level) in the graph. For example, API service 132 may add a first-level node in the graph linked to the root node for a schema definition that identifies a node's parent as the root node, para[0030], ln 16-26; and restoring the previously defined functionality of the graph node( API service 132 can build a projection of the API based on API schema 172 stored at schema data store 170, para[0030], ln 1-3/ As discussed in further detail below, API schema 172 can define functions in relation to a parent node, para[0031]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this optimizes certain operations to data stored according to a given object schema across a collection of nodes.
30. Claim 18 is rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy(US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) in view of Wells(US 20170344605 A1) further in view of YAMAMOTO(JP 2017062710 A).
As to claim 18, Wells teaches determining a graph node of the graph code to disable, based at least in part on the API; determining whether the graph node is enabled( The API exposed at application gateway 130 may have a root node, and each request for data interaction (e.g., read, write, data processing requests) using the API may be defined and verified in relation to an access route from the root node. For example, a valid request may be defined as a continuous path through the graph representation of the API, para[0031]/ because multiple paths may exist in a graph projection of the API to a specified node, the context in which API service 132 performs a request on the specified node may change based on the navigable path identified in the request, para[0034]/ If API service 132 detects that one of the subqueries is not accessible (e.g., the node identified in the subquery is not an immediate child of the node identified in a previous subquery), API service 132 can stop processing the query and notify client device 120 that the received query is invalid, para[0023],ln 21-27/ using the API may be defined and verified in relation to an access route from the root node. For example, a valid request may be defined as a continuous path through the graph representation of the API, while an invalid request may be defined as a discontinuous path through the graph representation of the API, para[0031]; saving one or more data items associated with the graph node(API service 132 can build a projection of the API based on API schema 172 stored at schema data store 170, para[0030], ln 1-3/ As discussed in further detail below, API schema 172 can define functions in relation to a parent node, para[0031]) for the same reason as to claim 16 above.
Yamamoto teaches setting a descriptor of the graph node to a null descriptor; and setting a functional specification of the graph node to an empty kernel( For example, in Fig. 2, the nodes of the graph represent classes or methods, and the edges of the graph represent relationships where the class holds methods (when annotation is <has>) or implementation relationships (when annotation is <impl>) Represents. That is, in FIG. 2, the annotation <has> indicates that the Tranceiver class has a send method and a transmit () method. <Impl> indicates the relationship between classes, Sec: Fig.2, ln 6-14/ Next, the graph edge search unit 111 returns the end point u of the input edge u .fwdarw. v if v is a node on the path with respect to the starting node (including the intermediate node) for each node v of the node set V, and so on. Otherwise return null. The graph edge search unit 111 sets the preceding node dictionary prev to return null for all nodes. The preceding node dictionary prev is a dictionary that holds information on the node immediately before the current search position. At this time, null is set in the preceding node dictionary prev indicating that the node immediately before the current search position has not been found, Sec: 1-12).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of setting a descriptor of the graph node to a null descriptor; and setting a functional specification of the graph node to an empty kernel because this specifies a route to be searched from among a plurality of routes to be searched.
31. Claims 19, 20 are rejected under 35 U.S.C. 103 as being unpatentable over in view of Veeraswamy(US 8977898 B1) in view of Manion( US 20040111469 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) further in view of EVANS(US 20200053025 A1).
As to claim 19, EVANS teaches updated data for a graph node of the graph code( para[0022]) and Wells teaches receiving updated data for a graph node of the graph code; determining that the graph node is enabled, based at least in part on the API; and providing the updated data to the graph node( para[0030], ln 10-43/ para[0034]/ para[0031]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this provides a more flexible and scalable environment within which to build data plane solutions than is possible with known programmable data plane technologies.
As to claim 20, EVANS teaches updated data for a graph node of the graph code( para[0022]) and Wells teaches receiving updated data for a graph node of the graph code; determining that the graph node is disabled, based at least in part on the API; storing the updated data; enabling the graph node; and providing the stored updated data to the graph node( para[0030], ln 10-43/ para[0034]/ para[0031]) for the same reason as to claim 19 above.
32. Claim 25 is rejected under 35 U.S.C. 103 as being unpatentable over in view of Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Takeda( US 20200310937 A1).
As to claim 25, Takeda teaches as a result of being executed by the one or more processors, enable a graph node of the graph code, based at least in part on another the API.
( FIG. 2 shows a data structure of an example of the storage 15. The storage 15 stores an operating system (OS) 151, an application 152, an image processing library 153, an RPC (Remote Procedure Call) library 154, para[0035], ln 1-6/ the image processing library 153 includes a node creation APT 1531, an RPC node creation API 1532, a graph creation API 1533, an execution API 1534, para[0038], ln 5-9/ The execution API 1534 is an API for executing the processes of the all-node graph, para[0044]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allocates a node to a thread in a thread pool, and executes the process of the RPC node of graph.
33. Claim 26 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Rudolph( US 20040267778 A1).
As to claim 26, Rudolph teaches disable a graph node of the graph code, based at least in part on another the API( The RemoveNode(IMFTopologyNode * pNode) command is called by a user to remove a node from a topology. The GetNodeCount( ) command is called by a user to determine the count of nodes in a current topology. The GetNode( ) command is called by a user to retrieve a node at position wIndex in the current topology. The Clear( ) command is called by a user to remove all nodes in the current topology, para[0094], ln 6-15).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because provides flexibility and modularity by providing interfaces for a system that separate the data flow information from the maintaining of stream state of multimedia components.
34. Claim 29 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of HIROTAC US 20200401444 Al).
As to claim 29, HIROTA teaches at least one of the one or more processors is a parallel processing unit ("PPU")( Parallel processing units (PPUs) are capable of very high processing performance using a large number of threads executing in parallel on dedicated programmable hardware processing units. Some PPUs provide an application programming interface (“API”) that enable developers to specify a workload as a graph of dependencies known as a “task graph.” Each node in the task graph is a task that is to be performed by one or more of the hardware processing units, para[002], In 1-12).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of at least one of the one or more processors is a parallel processing unit ("PPU") because this enables the latency between completing the producer task and launching the consumer task to be reduced.
35. Claim 30 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of SHARP(CN 104981811 B).
As to claim 30, SHARP teaches at least one of the one or more processors is a general-purpose graphics processing unit ("GPGPU")( the software instructions may conform to a graphics application programming interface (API), such as open graphics library API, open graphics library embedded system (OpenGL ES) API, open computing language API, Direct3D API, X3D API, RenderMan API, a WebGL API or any other public or proprietary standard graphics API. In order to process the image reproduction instruction, the CPU 6 can be one or more graphics rendering commands issued to GPU 12 (e.g., by GPU driver 7) to cause GPU 12 to execute the graphics data for some or all of the reproduction. In some examples, the graph data representation may include, for example, point, line, triangle, quadrangle, triangle belt and other graphic primitive list, Sec: one or more graphics rendering commands, In 1-15/GPU 12 may be configured to more reproduction mode performing graphics processing pipeline 30 includes reproduction mode (also referred to as tiles or delayed based on reproduction mode) and the reproduction mode directly. GPU 12 may also be operable to perform general shader 39 for performing more general application to calculation by the GPU hardware for highly parallel execution. Such universal application can be so called general-purpose graphics processing unit (GPGPU) and in accordance with the common API, such as OpenCL, Sec: Fig 3, In 8-17).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows the GPU only writing data to a secure portion of the first memory unit when the GPU is in the secure mode when the GPU is in the secure mode in the configuration.
36. Claims 37, 38 are rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Wiegley( US 20220236976 A1).
As to claim 37, Wieghley teaches the graph code is an instantiation of a graph template. ( generates a second set of pipelines from the plurality of partially hydrated pipeline templates including the regenerated partially hydrated pipeline template and one or more partially hydrated templates generated before the change in metadata. Para[0031], ln 27-33).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the above feature because this allows organizations to simplify software deployment process and manage applications, firewalls, clusters, servers, load balancers, and other computing infrastructure on the cloud platform.
As to claim 38, Wiegly teaches the graph code is defined by a superset execution graph template( Para[0031], ln 27-33) for the same reason as to claim 37 above.
37. Claim(s) 44 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) in view of Wells(US 20170344605 A1) and further in view of in view of VENKATESH( US 20210382765 Al).
As to claim 44, Wells teaches the API at least specifies the graph code, a graph node of the graph code(allows API service 132 to respond to requests by identifying nodes in the graph projection of the API , para[0030], In 6-10, API service 132 can generate a graph projection of the API including any extensions usable by the specific client device, para[0053], In 11-15) for the same reason as to claim 16 above.
VENKATESH teaches memory location to receive an execution status of the graph node( Application 1608A can submit APIs in a graphics stream for processing by driver 1606, para[0192], In 1-3/ application 1608A can insert DDIs to record a pipeline 3D state of a graphics pipeline in a state buffer 1614 in memory 1610 and can mark a current location of an API command added by application 1608A in queue 1612 as a potential queue split point with driver 1606, para[0194], In 4-12).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of memory location to receive an execution status of the graph node because this facilitates the emulation of other instruction sets.
38 . Claim(s) 45 is rejected under 35 U.S.C. 103 as being unpatentable over Kovvuri( US 20190286973 A1) in view of Lange( US 20230259714 A1) in view of De ( US 7559051 B2) in view of Sunada( US 8589441 B1) and further in view of Manion(US 20040111469 Al).
As to claim 45, Manion teaches the API returns an indication of success( 0 initiate shut down, the application calls the Peer Graph Shutdown function. This function cleans up any resources allocated by the call to the API Peer Graph Startup. As indicated above, there is preferably one call to Peer Graph Shutdown for each call to Peer Graph Startup. There are no required parameters for this function. This function returns an indication of success or failure of the shutdown function. In the case of error, the function returns an appropriate error code, para[0046]/ The graphing APIs of the present invention also allow the management and communication of presence information related to the node. The peer graph set presence API is used to inform other graph members that a node is actively connected and listening to the graph. The parameters of this API are the graph handle, and a flag that, if true, floods information to that graph that the node is "present." This API returns an indication of success or failure. The error indications include an indication of an error due to an invalid argument, and if not initialized, para[0092]).
It would have been obvious to one of the ordinary skill the art before the effective filling date of claimed invention was made to modify the teaching of above references to incorporate the feature of the API returns an indication of success because this allows the management and communication of presence information related to the node .
Response to the argument:
39. Applicant amendment filed on 04/02/2026 has been considered but they are not persuasive:
Applicant argued in substance that :
(1)“ Claims 1-20, and to the extent intended by paragraph 11 of the Office Action, claims 23, 40, and 41, stand rejected under 35 U.S.C. § 101 as being directed to an abstract idea, without significantly more. Applicant respectfully disagrees.”
(2) “ However, Kovvuri does not disclose an API call that returns or otherwise provides an execution status for graph nodes, much less to a memory location specified using the API call. Lange describes function calls that update a current node of a conversation graph and cause predetermined actions associated with that node to be performed. ”.
. Examiner respectfully disagreed with Applicant's remarks:
As to the point (1), As to Claims 1, 2, 3, 11, 23, 40, 41 have been rejected under 35 USC 101 for abstract idea without significantly more. Under Step 2A, Prong 1, the “ indicating whether the one or more graph nodes are to be performed enabled or disabled for execution ” , “ specifies the graph code, ]the one or more graph nodes of the graph code, and a memory location to receive an execution status of the one or more graph code”, “ indicate an execution status of at least one graph node of graph recite a mental process” since “ indicate”, “ specify” are functions that can be reasonably performed in the human mind with the aid of pen and paper through observation, evaluation, judgment, opinion.
Under Prong 2, the additional element “ in response to an application programming interface ("API") call, provide an execution status to indicate which of one or more graph nodes of graph code to a memory location specified using the API call “, “ graph code are to be performed by one or more graphics processing units (GPU)” , “ the execution status indicates whether the at least one graph node is enabled or disabled; and in response to the API call, providing the execution status of the at least one graph node” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using a generic computer component, or merely a generic computer or generic computer components to perform the judicial exception, Accordingly, the additional elements do not integrate the recited judicial exception into a practical application, and the claim is therefore directed to the judicial exception. See MPEP 2106.05(f).
Under Step 2B, the additional elements “ graph code are to be performed by one or more graphics processing units (GPU)” - this generally have been a mental process although the graph code could be a generic computer component in actual computer hardware. “ in response to an application programming interface ("API") call, provide an execution status of one or more graph nodes of graph code to a memory location specified using the API call,”- this is mere instructions to apply the mental process under mpep 2106.05(f), amounts to merely generally linking the use of the judicial exception to a particular technological environment or field or use, and is merely applying the judicial exception, therefore, does not amount to significantly more, hence, cannot provide an inventive concept.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application. See MPEP 2106.05(d). Thus, the claim is not patent eligible.
As to the point(2), De teaches The resulting plurality of abstract syntax trees 101 of the source code fragment comprising functions f, g and h is shown in FIG. 1, col 5, ln 20-25/ When performing a remote function call, an identifier for the function to be executed by the co-processor is passed as a parameter, col 8, ln 40-45/ the set of parameters of the remote function call further comprises a reference to a memory location used for storing information on the return status of the function to be called, col 4, ln 2-6/ wherein the interface comprises a remote function call, the remote function call having a set of parameters, the set of parameters comprising an identifier for the function to be called, at least one reference pointing to the input data of the function to be called, at least one reference pointing to the result data of the function to be called, and a reference pointing to a memory location used for storing information on the return status of the function to be called, col 12,l n 28-40); and
Sunada teaches processing system 1 having a hierarchical file management structure including the plurality of edge nodes 10 and the core node 20 communicatively coupled to all the edge nodes 10 can make use of the foregoing mechanism as follows. , col 6, ln 1-6/ the core node 20 and the edge nodes 10 each have functions as a file server that manages data of files (including metadata and entity data, and hereinafter simply referred to as "file data") to be provided to the client apparatuses 2, col 3, ln 43-47/ In the case of the core node 20 configured as a disk array apparatus, the core node 20 further includes, for example, a high-speed data transfer device (DMA), a cache memory, a channel controller (communication processor and protocol processor), a disk controller (drive controller), a RAID controller, a high-speed communication switch (crossbar switch or the like) and the like, col 8,l ln 21-29/ The storage apparatus 23 of the core node 20 stores therein programs and various kinds of data for implementation of functions of the core node 20 by the central processing device 21.
As shown in FIG. 6, the storage apparatus 23 stores therein, as main programs, a kernel driver 231, a file system 232, a file data acquisition PG 233, a file data provision PG 234, and a resource information acquisition PG 235. In addition, the storage apparatus 23 stores therein, as main data, a resource information collection schedule 241, edge node resource information 242 and edge node account information 243, col 8, ln 28-40/ FIG. 17 shows an example of the edge node resource information 242. As shown in FIG. 17, the edge node resource information 242 is a set of records each having items of an edge node ID 2421, an access right 2422, an operation status 2423, col 13, ln 56-61/ The operation status 2423 is set with information indicating the operation status of the edge node 10 ("Active" indicating that the edge node 10 is operating or "Inactive" indicating that the edge node 10 is stopped), col 14, ln 2-7).
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.
Conclusion
Jackson( US 20060173857 A1) teaches working memory 270 includes a read-only first data region 272 that stores the expected state received from BLT 206, working memory 270 includes a second data region 274 that is modifiable (i.e., read/write) and may be updated by monitoring subsystem 202 or used internally by rule engines 246. In general, data region 274 stores aggregated data representing the actual state of the fabric, therein the expected state data represents an expected state for the application nodes, if administrator 20 wished to define a sensor that automatically updates a variable in working memory when the status of a node changes for a particular tier node slot. Moreover, assume administrator 20 is only interested in this change when the node deployed to the slot is currently in the NODE_ENABLED or ONLINE states and the target state of the node is ONLINE, or when the target state is OFFLINE and the current state is ONLINE, if the node status is “active",
US 7559051 B2 teaches at least one reference pointing to the input data of the function to be called, at least one reference pointing to the result data of the function to be called, and a reference pointing to a memory location used for storing information on the return status of the function to be called; and second converting, after the partitioning step, the first set of abstract syntax trees and the second set of abstract syntax trees back to source code, thereby facilitating editing of a resulting specification in the source code, wherein the second converting step comprises converting the first set of abstract syntax trees to a first partial specification in the source code and converting the second set of abstract syntax trees to a second partial specification in the source code.
US 20060173857 A1 teaches administrator 20 wished to define a sensor that automatically updates a variable in working memory 348 when the status of a node changes for a particular tier node slot. Moreover, assume administrator 20 is only interested in this change when the node deployed to the slot is currently in the NODE_ENABLED or ONLINE states and the target state of the node is ONLINE, or when the target state is OFFLINE and the current state is ONLINE, or when the node has not been interacted with.
US 6049818 A teaches having signaled that output data is available, and the input of the second processing element 10a-e which is to process this data. The control unit 12 disables the signaled edge for other output, for example by appropriately loading a memory element which indicates the enabled/disabled states of the edge.
US 20110307897 A1 teaches the selected micrograph is indicated (e.g., by an entry in the cache) as being in an "offline" state, indicating that the selected micrograph is currently unavailable (e.g., the micrograph may be in the process of being modified by a developer).
AU 2016200107 A1 teaches some embodiments, the selected micrograph is indicated (e.g., by an entry in the cache) as being in an "offline" state, indicating that the selected micrograph is currently unavailable (e.g., the micrograph may be in the process of being modified by a developer). In
US 20200097857 A1 teaches In storing the activation states, the cell selects a subset of active cells and stores only the states of the selected cells. A large number of cells in a processing node may be active at the same time. Therefore, large memory space may be needed to store activation states of all activated cells in the processing node.
US 6026362 A teaches execution state of the program is maintained on a "call stack," located within computer memory, which records the current execution location in each function that has been called. When a function is called, the current execution location in the calling function is recorded in the stack. When the called function completes,
US 8516456 B1 teaches high state--a logical signal level that is interpretable as being greater than a low state holding register--a memory adapted to store data. IDLE state--a condition in which a circuit is not performing any function implement--the act of accomplishing
US 20180241655 A1 teaches Development Kit (DPDK), may pass incoming packets from a driver thread to multiple forwarding threads, depending on the contents of the packets. The forwarding thread may typically block (i.e., the CPU on which the forwarding thread was running may be halted and enter into a lower power state) when there are no packets to handle. In order to block, the forwarding thread may need to issue a system call. When a system call is issued, the CPU on which the forwarding thread is running, may
Any inquiry concerning this communication or earlier communications from the examiner should be directed to LECHI TRUONG whose telephone number is (571)272-3767. The examiner can normally be reached 10-8 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 Young Kevin 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 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.us pto.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.
/LECHI TRUONG/ Primary Examiner, Art Unit 2194