DETAILED ACTION
Claims 1-20 are pending in this application.
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
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 7, 12, 18 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al.
As to claim 1, Fellenstein teaches an apparatus comprising:
at least one processing platform comprising at least one processor coupled to at least one memory, the at least one processing platform, when executing program code, is configured to:
receive a request to execute a task (send job requests) (“…In the example, client system 200 interfaces with grid management system 150. Client system 200 may represent any computing system sending requests to grid management system 150. In particular, client system 200 may send job requests and jobs to grid management system 150. Further, while in the present embodiment client system 200 is depicted as accessing grid environment 240 with a request, in alternate embodiments client system 200 may also operate within grid environment 240…One function of grid management system 150 is to manage job requests and jobs from client system 200 and control distribution of each job to a selection of computing systems of virtual resource 160 for use of particular resources at the available computing systems within virtual resource 160. From the perspective of client system 200, however, virtual resource 160 handles the request and returns the result without differentiating between which computing system in virtual resource 160 actually performed the request…” paragraphs 0042/0044); and
manage execution of the task via one or more computational resources of a plurality of computational resources (Virtual Resource 160) ordinarily used for executing other tasks wherein (Grid Management System 150) (“…One function of grid management system 150 is to manage job requests and jobs from client system 200 and control distribution of each job to a selection of computing systems of virtual resource 160 for use of particular resources at the available computing systems within virtual resource 160. From the perspective of client system 200, however, virtual resource 160 handles the request and returns the result without differentiating between which computing system in virtual resource 160 actually performed the request…Grid environment 240, as managed by grid management system 150, may provide a single type of service or multiple types of services. For example, computational grids, scavenging grids, and data grids are example categorizations of the types of services provided in a grid environment. Computational grids may manage computing resources of high-performance servers. Scavenging grids may scavenge for CPU resources and data storage resources across desktop computer systems. Data grids may manage data storage resources accessible, for example, to multiple organizations or enterprises. It will be understood that a grid environment is not limited to a single type of grid categorization…Within architecture 300, first, a physical and logical resources layer 330 organizes the resources of the systems in the grid. Physical resources include, but are not limited to, servers, storage media, and networks. The logical resources virtualize and aggregate the physical layer into usable resources such as operating systems, processing power, memory, I/O processing, file systems, database managers, directories, memory managers, and other resources…” paragraphs 0044/0046/0048), when managing execution of the task, the at least one processing platform is further configured to:
receive one or more parameters representing one or more of a consent, a time period availability, and a computational resource capacity (capacity on demand resources/capacity on demand (COD) CPUs) from each of the plurality of computational resources (“…In the example, client system 200 sends a job request to GM 504. GM 504 searches for resources available to handle the job specified in the job request. In particular, GM 504 checks whether RS 506 and RS 508 can handle the job specified in the job request and may send queries to other GMs, such as GM 510 or GM 520. GMs 510 and 520 return reports on the availability of resources to handle the job request…For purposes of illustrations, RS 506 and RS 508 are considered local resources or resources within the same discrete set of resources to which jobs from client system 200 are submitted. In the examples following, when RS 506 and 508 are not meeting performance requirements for a job from client system 200, then additional resources may be allocated including other resources within the same discrete set of resources, capacity on demand resources, resources from internal grids and finally resources from external grids…For purposes of illustration, a client system sends a job request to a GM with a primary environment of the resources indicated at reference numeral 704. If threshold usage is reached for the four CPU resources indicated at reference numeral 704, then for a job qualifying for additional resources, the next level of resources within resource hierarchy 700 is preferably queried. In the example, the next level of resources includes capacity on demand (COD) CPUs, such as the COD CPU indicated at reference numeral 730. COD CPUs and other capacity on demand resources are preferably resources that are built into a system, but not accessed until demand exceeds the current capacity of the available resources. Use of COD resources may require payment of a fee in return for an electronic key which unlocks limited or unlimited use of the resource. According to one advantage of the invention, if a capacity on demand resource is allocated for a particular job, once the capacity on demand resource is no longer needed, it is preferably deallocated…Block 822...” paragraphs 0061/0062/0068/0072/0080); and
identify the one or more computational resources of the plurality of computational resources able to execute the task based on the one or more parameters (capacity on demand resource/COD CPU/Blocks 822/824/826/828) (‘…According to one advantage of the invention, if a capacity on demand resource is allocated for a particular job, once the capacity on demand resource is no longer needed, it is preferably deallocated…Next, if a COD CPU is not accessible or is not sufficient to meet the job execution requirements, the GM searches whether any resources are accessible from other systems within client enterprise 710. For example, a CPU indicated at reference numeral 732 may be accessible in system 714 within client enterprise 710. System 714 may include, for example, other server systems, other desktop systems, and other owned or leased grid systems…” paragraphs 0073/0082/0083).
Fellenstein is silent with reference to receive one or more parameters representing one or more of a consent, a time period availability.
Wood teaches receive one or more parameters representing one or more of a consent, a time period availability (determining an earliest available time range) (“…One aspect of the invention includes a method for job scheduling in a dedicated heterogeneous multi-node computing environment, the method comprising: grouping the nodes into homogeneous node sub-pools each comprising nodes of equal capacity; for each sub-pool, creating a corresponding free node schedule which charts the number of free nodes in the sub-pool over time; receiving a plurality of jobs to be scheduled; ordering the jobs by job priority; for each job in order of job priority, (a) identifying a conforming sub-pool set comprising conforming nodes of sufficient capacity suitable for use by the job, (b) determining an earliest available time range from the free node schedule(s) of the conforming sub-pool set, where the earliest available time range has a sufficient duration and a sufficient number of conforming free nodes to complete the job, and (c) scheduling the job for execution in the earliest available time range; and executing the jobs at their respective earliest available time ranges…” paragraphs 0007/0008/0050).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein with the teaching of Wood because the teaching of Wood would improve the system of Fellenstein by providing a technique for scheduling tasks or jobs based the availability of time resources.
As to claim 7, Fellenstein teaches the apparatus of claim 1 wherein, when managing execution of the task, the at least one processing platform is further configured to divide the task into sub tasks for parallel execution on the one or more identified computational resources (Data management service 306) (“…Multiple services may work together to provide several key functions of a grid computing system. In a first example, computational tasks are distributed within a grid. Data management service 306 may divide up a computation task into separate grid services requests of packets of data that are then distributed by and managed by resource management service 302. The results are collected and consolidated by data management system 306. In a second example, the storage resources across multiple computing systems in the grid are viewed as a single virtual data storage system managed by data management service 306 and monitored by resource management service 302…” paragraph 0055).
As to claims 12 and 20, see the rejection of claim 1 above, expect for a computer program product comprising a non-transitory processor-readable storage medium.
Fellenstein teaches a computer program product comprising a non-transitory processor-readable storage medium (Mass Storage Device 118).
As to claim 18, see the rejection of claim 7 above.
Claims 2 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1, and 12 above, and further in view of U.S. Pub. No. 2019/0155657 A1 to AN et al.
As to claim 2, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to register the task and the plurality of computational resources.
An teaches wherein, when managing execution of the task, the at least one processing platform is further configured to register the task and the plurality of computational resources (registered) (“…The distributed processing device 100 may include a market unit and a master unit. The market unit may include a demands region where tasks requested to be distributed-processed are registered, and a supplies region where a supply node having an available resource is registered. As shown in FIG. 1, Task 2 of Job 2 of Node 1 and Task 1 of Job 1 of Node 2 are registered as demands, and the supply node Node 3 20 is registered as a supply. When a task is registered as a demand, the master unit may calculate a size of a resource required to process the corresponding task, and may discover a supply node corresponding thereto and may register the same as a supply…” paragraph 0053).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein with the teaching of Wood because the teaching of Wood would improve the system of Fellenstein by providing a technique for scheduling tasks or jobs based the availability of time resources.
As to claim 13, see the rejection of claim 2 above.
Claims 3 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1, and 12 above, and further in view of U.S. Pub. No. 2013/0262556 A1 to XU et al.
As to claim 3, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to cluster the task and the plurality of computational resources based on clustering criteria.
XU teaches wherein, when managing execution of the task, the at least one processing platform is further configured to cluster the task and the plurality of computational resources based on clustering criteria (Policy 208) (“…In one example implementation, the administration mechanism 202 may examine a (computer cluster) policy 208 to select one or more job requests to be executed using cloud computing resources. Based on the policy 208, according to another example implementation, the administration mechanism 202 may select one or more specific cloud computing providers to request resource allocations and assign certain ones of the job requests for execution. For example, the administration mechanism 202 may match a particular job request with a cloud computing provider capable of efficient/expeditious execution, such as the cloud computing provider having a set of resources that meet or surpass the capacities indicated by the job specification data 204…A job scheduler 120 is provided which sends jobs for batch execution on the remote resource nodes 101-104. A plurality of jobs 111, 112, 113 are illustrated schematically as inputs to the job scheduler 120. A job 111-113 is defined as a set of processes which should be run on a single resource node or on multiple resource nodes in parallel. A job 111-113 is submitted together with a specification of resources required (type and amount) for successful execution. For example, a specification may include the number of computer processors required, the amount of memory, predefined software packages, etc…” paragraphs 0034/0044).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of XU because the teaching of XU would improve the system of Fellenstein and Wood by providing an administration mechanism for associating task/job requests with computing resources for executing the task/job requests.
As to claim 14, see the rejection of claim 3 above.
Claims 4 and 15 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1, and 12 above, and further in view of U.S. Pub. No. 2008/0270752 A1 to Rhine.
As to claim 4, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to calibrate the task to determine a minimum computational resource capacity and a maximum time to execute the task such that the identification of the one or more computational resources of the plurality of computational resources is further based on the calibration.
Rhine teaches wherein, when managing execution of the task, the at least one processing platform is further configured to calibrate the task to determine a minimum computational resource capacity (minimum processor share) and a maximum time (total processor time available is used to the maximum extent possible) to execute the task such that the identification of the one or more computational resources of the plurality of computational resources is further based on the calibration (“…In short, the executable processes are allocated fairly to the processors, while the total processor time available is used to the maximum extent possible. For this example, each CPU can be used 100% of the time by the assigned executable processes…Another method of assigning a plurality of executable processes to a plurality of physical processors is illustrated in flow chart form in FIG. 3. The method 50 can include defining 52 a minimum processor share and a maximum processor share for each executable process, for example as described above. The method can also include allocating 54 a share of total processor time to each executable process in proportion to the minimum processor share, up to the maximum processor share, to form a plurality of target share allocations. For example, the target share allocations can be obtained as described above. The method can also include mapping 56 the plurality of executable processes to the plurality of physical processors based on the target share allocations. For example, the mapping can be obtained as described above. If desired, the method can include additional steps, for example as described above…” paragraphs 0032/ 0043).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Rhine because the teaching of Rhine would improve the system of Fellenstein and Wood by providing a technique for provisioning more than enough computing resources to ensure task/job execution completion or optimal execution.
As to claim 15, see the rejection of claim 4 above.
Claims 5, 6, 16 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1, and 12 above, and further in view of W.O. No. 2014136302 A1 to Fujiwaka.
As to claim 5, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to cause deployment of a module on each of the plurality of computational resources, wherein the module is configured to facilitate managing execution of the task.
Fujiwaka teaches when managing execution of the task, the at least one processing platform is further configured to cause deployment of a module (VM111) on each of the plurality of computational resources, wherein the module is configured to facilitate managing execution of the task (“…Based on the execution plan determined by the task scheduler 22, the virtual machine management unit 26 determines that the target task is to be executed so that the VM111 for executing the target task is deployed and operated at the task start time. An instruction is given to the VM control unit 12 of the apparatus 10. When the input data transfer is indicated in the execution plan, the virtual machine management unit 26 instructs the transfer source server apparatus 10 or the transfer destination server apparatus 10 to transfer the input data together with the amount of input data to be transferred. To do. Further, the virtual machine management unit 26 may instruct the VM control unit 12 to terminate the VM11 after the target task is completed…Further, the virtual machine management unit 26 may instruct the VM control unit 12 to execute the target task or the VM 11 deployed to execute the target task using a temporary free resource. In response to this instruction, the VM control unit 12 operates on the server device 10 while the target task is operating using the temporary free resource, and software to which the resource is explicitly assigned. When an execution unit (task, process, virtual machine, etc.) requests a resource, the temporary free resource being used is released to the target task, and the amount of resources to which the software execution unit is explicitly allocated is secured. Control as you can…In the present embodiment, the virtual machine management unit 26 performs deployment of the VM 11 in order to schedule the target task in accordance with the execution plan determined by the task scheduler 22, but the management device 20 May be directly controlled. In this case, since the target task is directly controlled, the virtual machine management unit 26 can also be called a task control unit…”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Fujiwaka because the teaching of Fujiwaka would improve the system of Fellenstein and Wood by providing an isolated computing environment with its own CPU, memory, network interface, and storage, created from a pool of resources for task execution.
As to claim 6, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to cause deployment of a virtualization image on each of the one or more identified computational resources, wherein the virtualization image is configured to execute the task on each of the one or more identified computational resources.
Fujiwaka teaches wherein, when managing execution of the task, the at least one processing platform is further configured to cause deployment of a virtualization image (VM 11) on each of the one or more identified computational resources, wherein the virtualization image is configured to execute the task on each of the one or more identified computational resources (“…Based on the execution plan determined by the task scheduler 22, the virtual machine management unit 26 determines that the target task is to be executed so that the VM111 for executing the target task is deployed and operated at the task start time. An instruction is given to the VM control unit 12 of the apparatus 10. When the input data transfer is indicated in the execution plan, the virtual machine management unit 26 instructs the transfer source server apparatus 10 or the transfer destination server apparatus 10 to transfer the input data together with the amount of input data to be transferred. To do. Further, the virtual machine management unit 26 may instruct the VM control unit 12 to terminate the VM11 after the target task is completed…Further, the virtual machine management unit 26 may instruct the VM control unit 12 to execute the target task or the VM 11 deployed to execute the target task using a temporary free resource. In response to this instruction, the VM control unit 12 operates on the server device 10 while the target task is operating using the temporary free resource, and software to which the resource is explicitly assigned. When an execution unit (task, process, virtual machine, etc.) requests a resource, the temporary free resource being used is released to the target task, and the amount of resources to which the software execution unit is explicitly allocated is secured. Control as you can…In the present embodiment, the virtual machine management unit 26 performs deployment of the VM 11 in order to schedule the target task in accordance with the execution plan determined by the task scheduler 22, but the management device 20 May be directly controlled. In this case, since the target task is directly controlled, the virtual machine management unit 26 can also be called a task control unit…”).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Fujiwaka because the teaching of Fujiwaka would improve the system of Fellenstein and Wood by providing an isolated computing environment with its own CPU, memory, network interface, and storage, created from a pool of resources for task execution.
As to claim 16, see the rejection of claim 5 above.
As to claim 17, see the rejection of claim 6 above.
Claim 8 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1 above, and further in view of U.S. Pat. No. 9,189,275 B2 issued to Davidson et al.
As to claim 8, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to receive a heartbeat signal from each of the plurality of computational resources.
Davidson teaches wherein, when managing execution of the task, the at least one processing platform is further configured to receive a heartbeat signal from each of the plurality of computational resources (Cluster Management Engine 130) (“…Method 800 begins at step 805, where cluster management engine 130 determines that node 115 has failed. As described above, cluster management engine 130 may determine that node 115 has failed using any suitable technique. For example, cluster management engine 130 may pull nodes 115 (or agents 132) at various times and may determine that node 115 has failed based upon the lack of a response from node 115. In another example, agent 132 existing on node 115 may communicate a “heartbeat” and the lack of this “heartbeat” may indicate node 115 failure. Next, at step 810, cluster management engine 130 removes the failed node 115 from virtual cluster 220…” Col. 10 Ln. 41-52).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Davidson because the teaching of Davidson would improve the system of Fellenstein and Wood by providing an cluster management engine for determining a failed nodes and removing failed nodes (Davidson Col. 10 Ln. 41-52).
Claims 9 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1, and 12 above, and further in view of U.S. Pat. No. 7,640,547 B2 issued to Neiman et al.
As to claim 9, Fellenstein as modified by Wood teaches the apparatus of claim 1 however it is silent with reference to wherein, when managing execution of the task, the at least one processing platform is further configured to: aggregate results of execution of the task received from the one or more identified computational resources; and send the aggregated results of execution to a source of the task request.
Neiman teaches wherein, when managing execution of the task, the at least one processing platform is further configured to:
aggregate results of execution of the task received from the one or more identified computational resources (Step 1750); and send the aggregated results of execution to a source of the task request (Step 1780) (“…The node computer 800 may process the descendant job according to one or more workers 155-1 to 155-N specified by meta-information contained in the descendant job (step 1740). Upon completion of each descendant job 182-1 to 182-N, each node computer 800-1 to 800-N running a descendant job 182 may make the result from each such job available to the parent job 182 by storing those results in the queue 500 (step 1750). In addition, intermediate and/or final results of each descendant job may be stored in the global cache 900 for use by other jobs, including other descendant jobs and or the parent job (step 1760). Then, the parent job 182 may access the queue 500 and/or global cache 900 to obtain the results from the descendant jobs 182-1 to 182-N, which may be task outputs 189-1 to 189-N of the descendant jobs 182-1 to 182-N, and may use them to create its own result (another task output 189) (step 1770). As a further example, the results from the descendant jobs 182-1 to 182-N may be sent directly to the parent job 182 without passing through the queue 500 and/or global cache 900. The result created by the parent job 182 then may be sent from the node computer 800 to the transaction manager 400 for retrieval by the calling application 180 (step 1780)…” Col. 22 Ln. 8-29).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Neiman because the teaching of Neiman would improve the system of Fellenstein and Wood by providing a technique for accumulating results of task/job execution and providing the accumulated the results to the requesting application.
As to claim 19, see the rejection of claim 9 above.
Claim 10 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1 above, and further in view of U.S. No. 2023/0135715 A1 to Swerdlow.
As to claim 10, Fellenstein teaches the apparatus of claim 1 however it is silent with reference to wherein the processing platform is managed by an enterprise such that the one or more identified computational resources are utilized to execute the task when the one or more identified computational resources are available based on the other tasks the one or more identified computational resources are ordinarily used for execute (Grid Management System 150) (“…One function of grid management system 150 is to manage job requests and jobs from client system 200 and control distribution of each job to a selection of computing systems of virtual resource 160 for use of particular resources at the available computing systems within virtual resource 160. From the perspective of client system 200, however, virtual resource 160 handles the request and returns the result without differentiating between which computing system in virtual resource 160 actually performed the request…Grid environment 240, as managed by grid management system 150, may provide a single type of service or multiple types of services. For example, computational grids, scavenging grids, and data grids are example categorizations of the types of services provided in a grid environment. Computational grids may manage computing resources of high-performance servers. Scavenging grids may scavenge for CPU resources and data storage resources across desktop computer systems. Data grids may manage data storage resources accessible, for example, to multiple organizations or enterprises. It will be understood that a grid environment is not limited to a single type of grid categorization…Within architecture 300, first, a physical and logical resources layer 330 organizes the resources of the systems in the grid. Physical resources include, but are not limited to, servers, storage media, and networks. The logical resources virtualize and aggregate the physical layer into usable resources such as operating systems, processing power, memory, I/O processing, file systems, database managers, directories, memory managers, and other resources…” paragraphs 0044/0046/0048).
Swerdlow teaches the plurality of computational resources are devices respectively operated by employees (Employee Device 718) of the enterprise (Server Machine 402) (“…The task assignment engine 712 then assigns the task by sending a task assignment offer 722 to the employee device 718 and other devices (not shown in FIG. 7)…At block 1002, a server (e.g., the server machine 402, the server 504, the server 600 or the server 708) transmits a task to client devices (e.g., the client devices 410, the client devices 506 or the employee device 718) using PTT…” paragraphs 0076/0089).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Swerdlow because the teaching of Swerdlow would improve the system of Fellenstein and Wood by providing employee devices for processing tasks.
Claim 11 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Pub. No. 2009/0216883 A1 to Fellenstein et al. in view of U.S. Pub. No. 2002/0194248 A1 to Wood et al. as applied to claim 1 above, and further in view of U.S. No. 2007/0216933 A1 to Hirano et al.
As to claim 11, Fellenstein as modified by Wood teaches the apparatus of claim 1, however it is silent with reference to wherein the at least one processing platform is configured with a dynamic compute controller and at least one distributed compute managers operatively coupled to the dynamic compute controller.
Hirano teaches wherein the at least one processing platform is configured with a dynamic compute controller (job name is a job name to be registered in the job queue information area) and at least one distributed compute managers (schedule management server) operatively coupled to the dynamic compute controller (information system) (“…The job name is a job name to be registered in the job queue information area. For example, the job name may be set by a parameter designated from the user. Further, if the user does not designate the job name, the server 1-2 etc having the schedule function may set a default name. Moreover, the server 1-2 etc having the schedule function may also determine the job name in a predetermined procedure on the basis of a name of the program executed in the job, and so on…As discussed above, according to the information system in the embodiment, the jobs executed by the plurality of servers can be managed by use of the job queue partition on the shared disk 2. In this case, the plurality of servers are made to execute the general schedule function of making the request for the registration in the job queue information area, while restricting the function of registering the jobs in the job queue information area to the schedule management server (the highest-order schedule function), whereby the job management without any contradiction can be attained. Further, the schedule functions of requesting the jobs to be executed are distributed to the servers having the general schedule function, wherein the job execution request can be given from the plurality of servers…” paragraph 0146).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claim invention to modify the system of Fellenstein and Wood with the teaching of Hirano because the teaching of Hirano would improve the system of Fellenstein and Wood by providing a data structure queue for saving tasks/jobs in preparation for executions.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
U.S. Pub. No. 2018/0024862 A1 to Nakagawa et al. and directed to a parallel processing system includes three or more node devices including a first node device.
U.S. Pub. No. 2019/0163540 A1 to Lee et al. and directed to job scheduling based on node and application characteristics.
U.S. Pat. No. 11,573,831 B2 issued to LI et al. and directed to optimizing resource usage in distributed computing environments by dynamically adjusting resource unit size.
U.S. Pat. No. 10,402,227 B2 issued to Kinney and directed to task-level optimization with compute environments.
U.S. Pub. No. 2018/0060133 A1 to Fang et al. and directed to event-driven resource pool management.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHARLES E ANYA whose telephone number is (571)272-3757. The examiner can normally be reached Mon-Fir. 9-6pm.
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, KEVIN YOUNG can be reached at 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.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.
/CHARLES E ANYA/Primary Examiner, Art Unit 2194