Prosecution Insights
Last updated: October 02, 2026
Application No. 18/792,541

RESOURCE SCHEDULING METHOD, DEVICE, SYSTEM AND STORAGE MEDIUM

Non-Final OA §101§102§103§112
Filed
Aug 01, 2024
Priority
Dec 07, 2023 — CN 202311674435.X
Examiner
VINCENT, ROSS MICHAEL
Art Unit
Tech Center
Assignee
Beijing Volcano Engine Technology Co., Ltd.
OA Round
1 (Non-Final)
54%
Grant Probability
Moderate
1-2
OA Rounds
1y 4m
Est. Remaining
89%
With Interview

Examiner Intelligence

Grants 54% of resolved cases
54%
Career Allowance Rate
15 granted / 28 resolved
-6.4% vs TC avg
Strong +35% interview lift
Without
With
+35.4%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
28 currently pending
Career history
65
Total Applications
across all art units

Statute-Specific Performance

§101
14.3%
-25.7% vs TC avg
§103
70.3%
+30.3% vs TC avg
§102
7.3%
-32.7% vs TC avg
§112
7.3%
-32.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 28 resolved cases

Office Action

§101 §102 §103 §112
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-20 are currently pending for examination. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 2-9 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. Claims 2, 4, and 5 recite “according to a usage rate of the resource node cluster and/or a conflict rate during a process of the conflict detection”, “based on state information of the resource nodes and/or state information of the target resource allocation object”, and “dividing the resource node cluster into a plurality of resource node subsets according to a number of the plurality of candidate scheduler instances, wherein each resource node subset corresponds to one candidate scheduler instance; and/or adjusting a number of resource node subsets of the resource node subsets according to state information of the resource node subsets.”, respectively. However, “and/or” is not clear, and thus it is not known what the scope of these claims encompasses. Appropriate correction is required. Any claim not specifically mentioned above is rejected due to its dependency upon a rejected claim. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 19 and 20 are rejected under 35 USC 101 because the specification does not define “computer-readable storage medium” or “computer program product” (see disclosure: [0151]). In absence of the explicit definition, the medium can be interpreted to include transitory propagating signals such as carrier wave, infrared signals or digital signals for claim 19. A claim drawn to such a medium that covers both transitory and non-transitory embodiments may be amended to narrow the claim to cover only statutory embodiments to avoid a rejection under 35 U.S.C. § 101 by adding the limitation “non-transitory” to the claim. For claim 20, it is software per se without hardware. Software alone is not statutory. The claims can be amended to avoid a rejection under 35 U.S.C 101 by adding “a non-transitory computer-readable storage medium”. Claim Rejections - 35 USC § 102 The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claims 1-3, 13, and 15-20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Amaral (US 20160283270 A1). As per claim 1, Amaral discloses: A resource scheduling method, comprising: acquiring a target resource allocation object to be scheduled; allocating, from a plurality of candidate scheduler instances, a target scheduler instance for the target resource allocation object, and pre-allocating, by the target scheduler instance and from a resource node cluster, a resource node for the target resource allocation object, to obtain a pre-allocated resource node corresponding to the target resource allocation object ("receiving new workloads; classifying the new workloads; based on the classifying of the new workloads, determining whether to i) assign the new workloads to an existing one of the schedulers or ii) create one or more new schedulers and assign the new workloads to the one or more new schedulers; identifying conflicts in scheduler decisions; and selecting resolution policies for the conflicts.", 0010 ; “The pessimistic approach pre-allocates all of the resources in order to guarantee the deployment. The semi-pessimistic approach pre-allocates only part of the resources thus insuring availability of only a part of the resource.”, 0023 ; "As provided above, the present automatic resource allocation selector classifies new workloads (i.e., via workload classifier 204—see FIG. 2), identifies conflicts for pre-allocated resources in the case of semi-pessimistic or optimistic resource allocation (i.e., via conflict identifier 216), and institutes conflict resolution to resolve the conflicts.”, 0059) performing conflict detection on the pre-allocated resource node based on an optimistic concurrency strategy, and preempting the pre-allocated resource node after passing the conflict detection; and scheduling the target resource allocation object to run on the pre-allocated resource node (see fig. 5- conflict detectors 512/514/516, workloads are committed after passing conflict detection 518 ; "FIG. 5 is a diagram illustrating an exemplary methodology for automatically selecting conflict resolution policies for optimistic parallel workloads deployment according to an embodiment of the present invention", 0017 ; "After the conflicts have been resolved, the workloads are committed to the datacenter infrastructure in step 520.", 0070) As per claim 2, Amaral discloses: the pre-allocating, by the target scheduler instance and from a resource node cluster, a resource node for the target resource allocation object comprises: determining a pre-allocation mode of the target resource allocation object according to a usage rate of the resource node cluster and/or a conflict rate during a process of the conflict detection (“Based on the workload classification from workload classifier 204, a resource allocation type selector 206 determines the number of schedulers and their set-up. This involves deciding whether or not new schedulers need to be added and/or existing schedulers need to be removed, and which resource allocation model to use.", 0027 ; “The datacenter state metrics are related to: the number of cancelled schedulers' decisions, the number of available resources, resource usage versus resources pre-allocated, etc.”, 0037 ; “in general the classification phase will involve multiple utility matrices composed of workload profiles as rows and CPU, network, memory, or disk as columns and entries as intensiveness resource usage rating.", 0061 ; "In the first phase (1) new workloads arrive in step 502, and in step 504 the workloads are classified based on their resource demand (e.g., CPU, memory, network, and/or disk intensiveness—see below). Step 504 may be carried out, e.g., by the workload classifier 204 (see FIG. 2).", 0067) As per claim 3, Amaral discloses: pre-allocating, by the target scheduler instance and using the pre-allocation mode, a resource node for the target resource allocation object; wherein, the pre-allocation mode comprises a global pre-allocation mode based on the entire resource node cluster, or based on a local pre-allocation mode based on a resource node subset corresponding to the target scheduler instance, and wherein the resource node subset corresponding to the target scheduler instance comprises one or more resource nodes in the resource node cluster. (“The scheduler resource allocation type can be interchangeable according to the workload's profile, users' requirements and/or datacenters' states. The decision on selecting one or another scheduler resource allocation type might rely on how much resource allocation guarantee will be provided and the scheduler scalability (based, for example, on the flexibility of the scheduler to be able to take into account different requirements and meet those requirements). The decision based on the workload's profile will insure resource allocation for some class of workloads.", 0020 ; “R is the set of all datacenter resources;”, 0030 ; “If the datacenter cluster has a Monolithic scheduler, then i=1 and A.sub.i=B.sub.i=R. If the datacenter cluster has multiple schedulers all of which have all of the resources pre-allocated (pessimistic), then U.sup.n.sub.i=1 A.sub.i=R and B.sub.i=A.sub.i. If the scheduler has only part of the resources pre-allocated (semi-pessimistic), then A.sub.i<B.sub.i. Finally, if the scheduler has no pre-allocated resources (optimistic), then A.sub.i=0. When a scheduler is created, the A.sub.i and B.sub.i is defined accordingly to the workload's profile, user requirements, and datacenter cluster state. However, the size of A.sub.i and B.sub.i might also change based on user decision or feedback (e.g., regarding datacenter efficiency) from the datacenter cluster. If A.sub.i changes the scheduler will have more or less pre-allocated resource, and if B.sub.i changes the scheduler will compete more or less for resources.”, 0036 ; Examiner Note: scheduling with a monolithic scheduler equates to using a global pre-allocation mode, and scheduling with multiple schedulers out of a group of schedulers equates to using a local pre-allocation mode) As per claim 13, Amaral discloses: when failing to pass the conflict detection, re-performing the pre-allocation of resource node for the target resource allocation object, by the target scheduler instance, from the resource node cluster; or when failing to preempt the pre-allocated resource node, re-performing the conflict detection on the pre-allocated resource node based on the optimistic concurrency strategy ("After a scheduler makes a decision, in step 511 the scheduler forwards the decision to the conflict identifier (i.e., conflict identifier 216—see FIG. 2) which in steps 512-516 executes parallel identifications for conflicts (interferences) among the workloads, possible server overloading, and missing resources. Resource verification is done to check if there are enough resources to make the placement. This is also where the conflicts are detected since one placement becomes successful and the other one fails due to not having enough capacity. According to an exemplary embodiment, steps 512-516 are carried out using a workload interference conflict identifier, a server overloading conflict identifier, and a resource missing conflict identifier, respectively, which may all be components of the conflict identifier 216. A conflict occurs when the multiple schedulers' decisions choose the same host to place the request where the host can only accommodate one of the decisions. If conflicts are identified between schedulers' decisions, then the third phase begins. In the third phase (3), based on the possible conflicts identified in steps 512-516, policies are recommended in step 518 to resolve the conflicts so as to relieve cancellations and maintain a higher workload performance. According to an exemplary embodiment, step 518 is performed using a policy selector and enforcer.", 0069) As per claim 15, Amaral discloses: A resource scheduling system, comprising an interface server, a first scheduling terminal, a second scheduling terminal, a scheduling execution terminal, and a resource node cluster (see fig. 2- resource allocation selector, or resource scheduling system, comprises an interface server (201/202), a first and second scheduling terminal (208/210), a scheduling execution terminal (214), and a node cluster (cloud)) acquiring a target resource allocation object to be scheduled; allocating, from a plurality of candidate scheduler instances, a target scheduler instance for the target resource allocation object, and pre-allocating, by the target scheduler instance and from a resource node cluster, a resource node for the target resource allocation object, to obtain a pre-allocated resource node corresponding to the target resource allocation object ("receiving new workloads; classifying the new workloads; based on the classifying of the new workloads, determining whether to i) assign the new workloads to an existing one of the schedulers or ii) create one or more new schedulers and assign the new workloads to the one or more new schedulers; identifying conflicts in scheduler decisions; and selecting resolution policies for the conflicts.", 0010 ; “The pessimistic approach pre-allocates all of the resources in order to guarantee the deployment. The semi-pessimistic approach pre-allocates only part of the resources thus insuring availability of only a part of the resource.”, 0023 ; "As provided above, the present automatic resource allocation selector classifies new workloads (i.e., via workload classifier 204—see FIG. 2), identifies conflicts for pre-allocated resources in the case of semi-pessimistic or optimistic resource allocation (i.e., via conflict identifier 216), and institutes conflict resolution to resolve the conflicts.”, 0059) performing conflict detection on the pre-allocated resource node based on an optimistic concurrency strategy, and preempting the pre-allocated resource node after passing the conflict detection; and scheduling the target resource allocation object to run on the pre-allocated resource node (see fig. 5- conflict detectors 512/514/516, workloads are committed after passing conflict detection 518 ; "FIG. 5 is a diagram illustrating an exemplary methodology for automatically selecting conflict resolution policies for optimistic parallel workloads deployment according to an embodiment of the present invention", 0017 ; "After the conflicts have been resolved, the workloads are committed to the datacenter infrastructure in step 520.", 0070) As per claim 16, Amaral discloses: An electronic device, comprising at least one processor and a memory; wherein the memory stores computer-executable instructions (“The present invention may be a system, a method, and/or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.”, 0122) acquiring a target resource allocation object to be scheduled; allocating, from a plurality of candidate scheduler instances, a target scheduler instance for the target resource allocation object, and pre-allocating, by the target scheduler instance and from a resource node cluster, a resource node for the target resource allocation object, to obtain a pre-allocated resource node corresponding to the target resource allocation object ("receiving new workloads; classifying the new workloads; based on the classifying of the new workloads, determining whether to i) assign the new workloads to an existing one of the schedulers or ii) create one or more new schedulers and assign the new workloads to the one or more new schedulers; identifying conflicts in scheduler decisions; and selecting resolution policies for the conflicts.", 0010 ; “The pessimistic approach pre-allocates all of the resources in order to guarantee the deployment. The semi-pessimistic approach pre-allocates only part of the resources thus insuring availability of only a part of the resource.”, 0023 ; "As provided above, the present automatic resource allocation selector classifies new workloads (i.e., via workload classifier 204—see FIG. 2), identifies conflicts for pre-allocated resources in the case of semi-pessimistic or optimistic resource allocation (i.e., via conflict identifier 216), and institutes conflict resolution to resolve the conflicts.”, 0059) performing conflict detection on the pre-allocated resource node based on an optimistic concurrency strategy, and preempting the pre-allocated resource node after passing the conflict detection; and scheduling the target resource allocation object to run on the pre-allocated resource node (see fig. 5- conflict detectors 512/514/516, workloads are committed after passing conflict detection 518 ; "FIG. 5 is a diagram illustrating an exemplary methodology for automatically selecting conflict resolution policies for optimistic parallel workloads deployment according to an embodiment of the present invention", 0017 ; "After the conflicts have been resolved, the workloads are committed to the datacenter infrastructure in step 520.", 0070) As per claim 17, it is a device claim (see Amaral, [0122]) comprising substantially the same limitations as claim 2, and as such, it is rejected for substantially the same reasons. As per claim 18, it is a device claim (see Amaral, [0122]) comprising substantially the same limitations as claim 3, and as such, it is rejected for substantially the same reasons. As per claim 19, Amaral discloses: A computer-readable storage medium, storing computer-executable instructions which, when executed by a processor, cause the processor to implement the resource scheduling method according to claim 1 (“The present invention may be a system, a method, and/or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.”, 0122) As per claim 20, Amaral discloses: A computer program product, comprising computer-executable instructions which, when executed by a processor, cause the processor to implement the resource scheduling method according claim 1 (“The present invention may be a system, a method, and/or a computer program product. The computer program product may include a computer readable storage medium (or media) having computer readable program instructions thereon for causing a processor to carry out aspects of the present invention.”, 0122) 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 4 is rejected under 35 U.S.C. 103 as being unpatentable over Amaral (US 20160283270 A1) in view of Lee (US 20240080277 A1). As per claim 4, Amaral fully discloses the limitations of claim 3, but does not explicitly disclose filtering and scoring resource nodes. However, Lee discloses: filtering and scoring, by the target scheduler instance, resource nodes from the entire resource node cluster corresponding to the pre-allocation mode or the resource node subset corresponding to the target scheduler instance, based on state information of the resource nodes and/or state information of the target resource allocation object, and determining a resource node having a highest score as the pre-allocated resource node corresponding to the target resource allocation object. ("Scheduler 312 may be configured to assign pods (e.g., pod 234) to cluster nodes (e.g., node 313 and 315, each an example of the SMC node(s) 114). Upon creating a new pod, the scheduler 312 may compile a list of feasible nodes (a “candidate list”) in which the pod can be placed. This is referred to as “filtering.” The nodes in the candidate list may be scored based on constraints and criteria (e.g., based on individual and collective resource requirements, hardware/software/policy constraints, affinity and anti-affinity specifications, data locality, inter-workload interference, and/or deadlines). The pod (e.g., pod 234) may be assigned to the node (e.g., node 313) with the highest score.", 0109 ; Examiner Note: the candidate list equates to a filtered set of nodes.) The combination of Amaral in view of Lee filters and scores the cluster nodes corresponding to the pre-allocation mode/resource allocation type to select the highest scoring node for pre-allocation. It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Amaral with those of Lee in order to provide a managed infrastructure service which enables a more efficient and lightweight system with a reduced footprint (Lee, [0052]). Claims 5-8 are rejected under 35 U.S.C. 103 as being unpatentable over Amaral (US 20160283270 A1) in view of Theimer (US 20070294697 A1). As per claim 5, Amaral fully discloses the limitations of claim 2, but does not explicitly disclose dividing the resource node cluster into a plurality of resource node subsets according to the number of scheduler instances. However, Theimer discloses: dividing the resource node cluster into a plurality of resource node subsets according to a number of the plurality of candidate scheduler instances, wherein each resource node subset corresponds to one candidate scheduler instance; and/or adjusting a number of resource node subsets of the resource node subsets according to state information of the resource node subsets. (“In this embodiment, the scheduler for an individual compute cluster (e.g., cluster 405 or cluster 410) may receive job requests directly from "internal" clients as well as from the meta-scheduler 415. The implications for the meta-scheduler 415 are that it may not assume that it "owns" the resources managed by each compute cluster's scheduler. Rather, the meta-scheduler 415 may assume an "advertising" model, in which compute cluster schedulers advertise their resources to both clients and the meta-scheduler. Consequently the meta-scheduler 415 may confirm that its understanding of the availability of resources within a given compute cluster actually correspond to the cluster's current state. Resources may become allocated to a specific client or meta-scheduler (acting on behalf of a client) when a resource reservation request causes them to be explicitly reserved.", 0050 ; "The request to create reservation 137 was submitted by the client 420 to the meta-scheduler 415, which in turn employed the schedulers 425 and 450 to reserve resources on the machines in the clusters 405 and 410. The meta-scheduler 415 directly reserved resources on the desktop machine 430.", 0059) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Amaral with those of Theimer in order to provide schedulers with better control over how often they process message traffic through the use of query messages which allow schedulers to tailor what kind of information they wish to receive from compute nodes and other schedulers at any given time (Theimer, [0098]). As per claim 6, Amaral fully discloses the limitations of claim 3, but does not explicitly disclose the resource allocation object set comprising a plurality of target resource allocation objects. However, Theimer discloses: acquiring a target resource allocation object to be scheduled comprises: acquiring at least one resource allocation object set, each of the at least one resource allocation object set comprising a plurality of target resource allocation objects to be scheduled. (see fig. 1 ; “In FIG. 1, two instances--a serial application 105 and an MPI application 110--are shown in which a resource reservation is employed to run a single job. Note that the MPI job consists of multiple processes, which run on multiple compute nodes.”, 0027 ; “Reserved resources may also be used to run multiple (concurrent) jobs, as illustrated by the parametric sweep 115 and the work flow 120 instances shown. In these cases, a scheduler may control which resources will be used to execute the parametric sweep 115 and the work flow 120 jobs.”, 0028 ; "For example, a client may wish to independently reserve, or pre-allocate resources for later and/or guaranteed use. Note that this is different from simply submitting a job for execution to a scheduler that then queues the job for later execution--perhaps at a specific time requested by the client. For example, a meta-scheduler may wish to reserve resources so that it may make informed scheduling decisions about which "subsidiary" scheduler to send various jobs to. Similarly, a client may wish to reserve resources so as to run two separate jobs in succession to each other, with one job writing output to a scratch storage system and the second job reading that output as its input without having to worry that the data may have vanished during the interval that occurs between the execution of the two jobs.", 0143) As per claim 7, Amaral fully discloses the limitations of claim 6, but does not explicitly disclose pre-allocating, by the target scheduler instance, a respective resource node for each target resource allocation object in the first resource allocation object set from the resource node subset corresponding to the target scheduler instance. However, Theimer discloses: the allocating, from a plurality of candidate scheduler instances, a target scheduler instance for the target resource allocation object comprises: allocating, from the plurality of candidate scheduler instances, a target scheduler instance for a first resource allocation object set of the at least one resource allocation object set; and the pre-allocating, by the target scheduler instance, a resource node for the target resource allocation object from the resource node subset corresponding to the target scheduler instance comprises: pre-allocating, by the target scheduler instance, a respective resource node for each target resource allocation object in the first resource allocation object set from the resource node subset corresponding to the target scheduler instance. (see fig. 1 ; “In FIG. 1, two instances--a serial application 105 and an MPI application 110--are shown in which a resource reservation is employed to run a single job. Note that the MPI job consists of multiple processes, which run on multiple compute nodes.”, 0027 ; “Reserved resources may also be used to run multiple (concurrent) jobs, as illustrated by the parametric sweep 115 and the work flow 120 instances shown. In these cases, a scheduler may control which resources will be used to execute the parametric sweep 115 and the work flow 120 jobs.”, 0028 ; "For example, a client may wish to independently reserve, or pre-allocate resources for later and/or guaranteed use. Note that this is different from simply submitting a job for execution to a scheduler that then queues the job for later execution--perhaps at a specific time requested by the client. For example, a meta-scheduler may wish to reserve resources so that it may make informed scheduling decisions about which "subsidiary" scheduler to send various jobs to. Similarly, a client may wish to reserve resources so as to run two separate jobs in succession to each other, with one job writing output to a scratch storage system and the second job reading that output as its input without having to worry that the data may have vanished during the interval that occurs between the execution of the two jobs.", 0143) As per claim 8, Amaral fully discloses the limitations of claim 7, but does not explicitly disclose a plurality of target resource allocation objects which are within the same resource allocation object set belonging to a same process. However, Theimer discloses: the acquiring at least one resource allocation object set comprises: acquiring a plurality of target resource allocation objects to be scheduled from an interface server ("The scheduler 1005 uses the communications mechanism 1030 to communicate with clients and other schedulers as appropriate.", 0313) grouping the plurality of target resource allocation objects to obtain at least one resource allocation object set, wherein a plurality of target resource allocation objects in the same resource allocation object set belong to a same process, or belong to concurrent associated processes, or are configured with same identification information. (“In FIG. 1, two instances--a serial application 105 and an MPI application 110--are shown in which a resource reservation is employed to run a single job. Note that the MPI job consists of multiple processes, which run on multiple compute nodes.”, 0027) Claim 9 is rejected under 35 U.S.C. 103 as being unpatentable over Amaral (US 20160283270 A1) in view of Theimer (US 20070294697 A1) in further view of Liu (US 20230031522 A1). As per claim 5, Amaral in further view of Theimer fully discloses the limitations of claim 8, but does not explicitly disclose skipping allocating a target scheduler instance for the first resource allocation object set when the number of the target resource allocation objects comprised in the first resource allocation object set in the preset time is less than the preset number. However, Liu discloses: the allocating, from the plurality of candidate scheduler instances, a target scheduler instance for a first resource allocation object set of the at least one resource allocation object set comprises: allocating, from the plurality of candidate scheduler instances, a target scheduler instance for the first resource allocation object set when a number of the target resource allocation objects comprised in the first resource allocation object set in a preset time is not less than a preset number; or determining to skip allocating a target scheduler instance for the first resource allocation object set when the number of the target resource allocation objects comprised in the first resource allocation object set in the preset time is less than the preset number. (“determine an allocation value of the association feature based on the allocation probability of each of the plurality of association features of the candidate recommended object, where the allocation value is a probability that each association feature is allocated to the j.sup.th feature interaction group in the k.sup.th-order feature interaction set; and if the allocation value of the association feature is greater than a preset threshold, allocate the association feature to the j.sup.th feature interaction group in the k.sup.th-order feature interaction set; or if the allocation value of the association feature is not greater than a preset threshold, skip allocating the association feature to the j.sup.th feature interaction group in the k.sup.th-order feature interaction set.", 0083 ; Examiner Note: the allocation value of the association feature corresponds to a number of the target resource allocation objects comprised in the first resource allocation object set) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Amaral in view of Theimer with those of Liu in order to improve recommendation accuracy through the use of automatic feature grouping and feature interaction to automatically search for important higher-order interaction information (Liu, [0010]). Claims 10-12 are rejected under 35 U.S.C. 103 as being unpatentable over Amaral (US 20160283270 A1) in view of Boutin (US 20160098292 A1). As per claim 10, Amaral fully discloses the limitations of claim 1, but does not explicitly disclose fetching a target resource allocation object from the first queue by using a first preset strategy. However, Boutin discloses: adding the target resource allocation object to a first queue; wherein the allocating, from a plurality of candidate scheduler instances, a target scheduler instance for the target resource allocation object comprises: fetching a target resource allocation object from the first queue by using a first preset strategy, and allocating, from the plurality of candidate scheduler instances, a target scheduler instance for the fetched target resource allocation object. ("For instance, if the task queue for the server changes, that might be an event that warrants reevaluation and republishing. Other possible events might include the completion of a task, a detection of subpar performance of a task, an addition of a new task to the task queue, the removal of a task from the task queue, and the like.", 0046 ; see fig. 1- job schedulers 130 ; "With respect to a particular server having a particular queue, the particular server might be configured to, at least under some circumstances, obtain one or more execution files in preparation of a particular task in the particular queue even before the particular task has been initiated. A particular server of the plurality of servers might be configured to respond to multiple concurrent requests to schedule different tasks by scheduling both tasks. A particular server of the plurality of servers might be configured to respond to multiple concurrent requests to schedule different tasks by selecting whichever task results in the greatest savings of estimated completion time if selected.", 0118) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Amaral with those of Boutin in order to provide improved utilization and load balancing by using a scheduler which favors upgrading opportunistic tasks on machines with fewer regular tasks, while waiting for temporarily heavily loaded machines to drain (Boutin, [0096]). As per claim 11, Amaral fully discloses the limitations of claim 1, but does not explicitly disclose adding one or more target resource allocation objects allocated to the target scheduler instance to a second queue. However, Boutin discloses: the pre-allocating, by the target scheduler instance and from a resource node cluster, a resource node for the target resource allocation object comprises: adding one or more target resource allocation objects allocated to the target scheduler instance to a second queue; and fetching, by the target scheduler instance, a target resource allocation object from the second queue by using a second preset strategy, and pre-allocating a resource node for the fetched target resource allocation object. ("Each of at least some of the plurality of servers further might comprise: a task queue configured to queue tasks that are scheduled to be performed by the server; a task pool that is external to the task queue and that includes one more other tasks; and an opportunistic scheduling module that is configured to perform an act of assessing resource usage of the server, and if there are available resources to perform one or more of the tasks in the task pool, further performing an act of initiating the one or more tasks from the task pool.", 0118 ; Examiner Note: the task pool equates to a second queue) As per claim 12, Amaral in view of Boutin fully discloses the limitations of claim 11. Furthermore, Boutin discloses: determining a priority of each target resource allocation object in the second queue, and fetching, by the target scheduler instance, a target resource allocation object from the second queue according to the priority. (“Each job scheduler allocates its tokens to tasks and performs task matches in a descending order of their priorities. It is not required that an opportunistic task be upgraded on the same machine, but it might be preferable as there is no initialization time. By calculating all costs holistically, the scheduler favors upgrading opportunistic tasks on machines with fewer regular tasks, while waiting for temporarily heavily loaded machines to drain. This strategy results in a better utilization of the tokens and better load balancing.", 0096 ; “an opportunistic scheduling module that is configured to perform an act of assessing resource usage of the server, and if there are available resources to perform one or more of the tasks in the task pool, further performing an act of initiating the one or more tasks from the task pool.", 0118) Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over Amaral (US 20160283270 A1) in view of Papakipos (US 8136104 B2). As per claim 14, Amaral fully discloses the limitations of claim 1, but does not explicitly disclose converting the initial resource allocation objects to the target resource allocation objects. However, Papakipos discloses: acquiring a target resource allocation object to be scheduled comprises: acquiring initial resource allocation objects to be scheduled from different scheduling systems, and converting the initial resource allocation objects to the target resource allocation objects. ("The scheduling pass 611 packs operations from the work queue 304 into compute kernels, translates the compute kernels into executable binaries, and builds the program sequence 615.", col.46, lines 56-59) It would have been obvious to one of ordinary skill in the art, before the effective filing date, to combine the teachings of Amaral with those of Papakipos in order to allow for easy porting of existing applications from one programming language to another language, and easy integration of the runtime system's libraries with other standard libraries such as Math Kernel Library (MKL) and Message Passing Interface (MPI) (Papakipos, [col.4, lines 63-67]). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: Mital (US 20230118325 A1) – discloses a system wherein a set of schedulers are each configured to have a local scheduler memory. A memory manager is configured to execute an instruction set from a compiler. The compiler is configured to divide the multiple arithmetic logic units into multiple clusters. The compiler is configured to assign each cluster a scheduler from the set of schedulers. The scheduler is configured to cooperate with a memory manager so that a fetch of data from an external memory to the local scheduler memory occurs a single time per calculation. Feller (US 10574545 B2) – discloses a system comprising a hybrid resource allocation module that can concurrently utilize an optimistic allocation scheme alongside a pessimistic allocation scheme. Machine learning techniques utilizing previous activity history of applications can be used to train a cluster model that is integrated by a hybrid resource allocation module to classify applications in either a pessimistic cluster or an optimistic cluster that identifies under which scheme requests from the applications will be processed. Any inquiry concerning this communication or earlier communications from the examiner should be directed to ROSS MICHAEL VINCENT whose telephone number is (703)756-1408. The examiner can normally be reached Mon-Fri 8:30AM-5:30PM. 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, April Blair can be reached at (571) 270-1014. 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. /R.M.V./ Examiner, Art Unit 2196 /APRIL Y BLAIR/Supervisory Patent Examiner, Art Unit 2196
Read full office action

Prosecution Timeline

Aug 01, 2024
Application Filed
Sep 22, 2026
Non-Final Rejection mailed — §101, §102, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12717585
DEVICE WITH COMMAND LIST EXECUTION AND RELATED METHOD
4y 7m to grant Granted Aug 25, 2026
Patent 12684600
METHOD FOR RESOURCE EXCLUSION, TERMINAL DEVICE, AND STORAGE MEDIUM
3y 12m to grant Granted Jul 14, 2026
Patent 12632279
CROSS-PLATFORM VIRTUAL MACHINE MIGRATION
3y 5m to grant Granted May 19, 2026
Patent 12632323
CLOUD-NATIVE APPLICATION PROGRAMMING INTERFACE (API) RECOMMENDATION METHOD FUSING DATA AUGMENTATION AND CONTRASTIVE LEARNING
2y 8m to grant Granted May 19, 2026
Patent 12530219
TIME-BOUND LIVE MIGRATION WITH MINIMAL STOP-AND-COPY
3y 2m to grant Granted Jan 20, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
54%
Grant Probability
89%
With Interview (+35.4%)
3y 6m (~1y 4m remaining)
Median Time to Grant
Low
PTA Risk
Based on 28 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month