Prosecution Insights
Last updated: April 19, 2026
Application No. 18/160,150

SYSTEMS AND METHODS FOR IDENTIFYING AND UTILIZING STRANDED COMPUTING RESOURCES

Final Rejection §101§103§112§Other
Filed
Jan 26, 2023
Examiner
DO, CHAT C
Art Unit
2193
Tech Center
2100 — Computer Architecture & Software
Assignee
DELL PRODUCTS, L.P.
OA Round
2 (Final)
43%
Grant Probability
Moderate
3-4
OA Rounds
4y 11m
To Grant
52%
With Interview

Examiner Intelligence

Grants 43% of resolved cases
43%
Career Allow Rate
76 granted / 178 resolved
-12.3% vs TC avg
Moderate +9% lift
Without
With
+9.1%
Interview Lift
resolved cases with interview
Typical timeline
4y 11m
Avg Prosecution
17 currently pending
Career history
195
Total Applications
across all art units

Statute-Specific Performance

§101
29.0%
-11.0% vs TC avg
§103
30.1%
-9.9% vs TC avg
§102
19.3%
-20.7% vs TC avg
§112
17.5%
-22.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 178 resolved cases

Office Action

§101 §103 §112 §Other
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 pending in this application. In the amendment, independent claims 1, 11, and 19 are amended. This office action is Final. Claim Rejections - 35 USC § 112 The following is a quotation of the first paragraph of 35 U.S.C. 112(a): (a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention. The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112: The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention. Claims 1-20 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention. Re claims 1, 11, and 19, the newly added limitation “wherein the remainder of the physical computing resource corresponds to more than 87.5% of the physical computing resource” is not found/supported/described in the original specification. For examination purposes, the examiner disregards this limitation. Claims 2-10, 12-18 and 20 are also rejected for being dependent on the rejected claims 1, 11, and 19 respectively above. 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 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being incomplete for omitting essential structural cooperative relationships of elements, such omission amounting to a gap between the necessary structural connections. See MPEP § 2172.01. The omitted structural cooperative relationships are: Re claims 1, 11, and 19, these claims have new added limitation “performing a lookup….and resource utilization data”, however this lookup limitation does not seem to integrate with other limitations within the claims. In another words, nowhere within the claims that would require/utilize the output/result of the lookup operation as claimed. It is missing the essential limitations that would bridge/connect these limitations of lookup operation and identifying operation together. Claims 2-10, 12-18 and 20 are also rejected for being dependent on the rejected claims 1, 11, and 19 respectively without curing the deficiency identified above. 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 1-20 are rejected under 35 U.S.C. 101 because the claimed invention recites a judicial exception, is directed to that judicial exception, an abstract idea, as it has not been integrated into practical application and the claims further do not recite significantly more than the judicial exception. Examiner has evaluated the claims under the framework provided in the 2019 Patent Eligibility Guidance published in the Federal Register 01/07/2019 and has provided such analysis below. Step 1: Claims 1-10 are directed to methods and fall within the statutory category of processes; Claims 11-18 are directed to non-transitory computer readable media and fall within the statutory category of articles of manufacture; Claims 19-20 are directed to systems and fall within the statutory category of machines. Therefore, “Are the claims to a process, machine, manufacture or composition of matter?” Yes. In order to evaluate the Step 2A inquiry “Is the claim directed to a law of nature, a natural phenomenon or an abstract idea?” we must determine, at Step 2A Prong 1, whether the claim recites a law of nature, a natural phenomenon or an abstract idea and further whether the claim recites additional elements that integrate the judicial exception into a practical application. Step 2A Prong 1: Claims 1, 11, and 19: The limitations of “performing a lookup…resource utilization data” and “identifying, in a computing resource database, a stranded computing resource satisfying the virtual machine parameter…the physical computing resource”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think and observe, judge and evaluate if some stranded resources would meet the minimum requirements of a virtual machine. Furthermore, the limitations of “allocating, to the virtual machine, the stranded computing resource…computing reosurce”, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think about and evaluate allocating some specific group of resources to a virtual machine. Therefore, Yes, claims 1, 11, and 19 recite judicial exceptions. The claims have been identified to recite judicial exceptions, Step 2A Prong 2 will evaluate whether the claims are directed to the judicial exception. Step 2A Prong 2: Claims 1, 11, and 19: The judicial exception is not integrated into a practical application. In particular, the claim recites the following additional elements – “a computing resource database”, “virtual machine parameters”, “virtual machine”, “A non-transitory computer readable medium comprising instructions” (claim 11), and “a computing device” (claim 19), “a processor” (claim 19), “memory storing instructions” (claim 19), which is merely a recitation of a field of use/technological environment (see MPEP § 2106.05(h)) which does not integrate a judicial exception into practical application. Further, the claims recite “and initiating the virtual machine using the stranded computing resource” and “when executed by a processor, enables the processor to perform a method” (claim 11 and 19) which is merely using a computer as a tool to apply the abstract idea (see MPEP § 2106.05(f)) which does not integrate a judicial exception into practical application. Lastly, the claims recite “obtaining, by a virtual machine manager, virtual machine parameters for a virtual machine….customer information” which is merely insignificant extra-solution data gathering activity (see MPEP § 2106.05(g)) which does not integrate a judicial exception into practical application. Examiner notes that these elements held to be merely insignificant extra-solution data gathering will be addressed below in Step 2B as further being Well-Understood, Routine, and Conventional (WURC). Therefore, “Do the claims recite additional elements that integrate the judicial exception into a practical application? No, these additional elements do not integrate the abstract idea into a practical application and they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea. After having evaluating the inquires set forth in Steps 2A Prong 1 and 2, it has been concluded that claims 1, 11, and 19 not only recite a judicial exception but that the claims are directed to the judicial exception as the judicial exception has not been integrated into practical application. Step 2B: Claims 1, 11, and 19: The claims do not include additional elements, alone or in combination, 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, the additional elements amount to no more than field of use/technological environment, using a computer as a tool to apply, and insignificant extra-solution data gathering which do not amount to significantly more than the abstract idea. Further, the insignificant extra-solution data gathering is also WURC, see at least MPEP § 2106.05(d)(II) “The courts have recognized the following computer functions as well‐understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. i. Receiving or transmitting data over a network” wherein obtaining virtual machine parameters as claimed is receiving data over a network. Therefore, “Do the claims recite additional elements that amount to significantly more than the judicial exception? No, these additional elements, alone or in combination, do not amount to significantly more than the judicial exception. Having concluded analysis within the provided framework, claims 1, 11, and 19 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claims 2-3, 12-13, and 20, they recite additional abstract ideas of “making a first determination, using the computing resource database, that the stranded computing resource is unused” (claims 2, 12, 20) which, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think about and observe, judge and evaluate if a resource for a virtual machine is remaining unused by reviewing some data. Further, the claims recite “based on the first determination, the method further comprises: deallocating the stranded computing resource from a second virtual machine.” (claims 3, 13, and 20) which, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think about and evaluate deallocating some resources from a virtual machine if the resources are determined to be unused. Lastly, the claims recite additional elements of “a second virtual machine” (claims 3, 13, and 20) which is merely a recitation of generic computing components used in a field of use/technological environment (see MPEP § 2106.05(h)) which does not integrate a judicial exception into practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claims 2-3, 12-13, and 20 also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, claims 2-3, 12-13, and 20 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claims 4 and 14, they recite additional abstract ideas of “making a second determination, using an allocation database, that second virtual machine parameters are violated” which, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think about and observe, judge and evaluate if a virtual machine’s parameters, or minimum requirements, are being violated. Further, they recite “based on the second determination: deallocating the stranded computing resource from the virtual machine; and re-allocating the stranded computing resource to the second virtual machine” which, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can mentally plan or evaluate that a certain VM requires more resources, and thus can reallocate the original amount of resources it needed. Lastly, the claims recite additional elements of “wherein the second virtual machine parameters are associated with the second virtual machine” which is merely a recitation of generic computing components used in a field of use/technological environment (see MPEP § 2106.05(h)) which does not integrate a judicial exception into practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claims 4 and 14 also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, claims 4 and 14 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claims 5 and 15, they recite additional elements of “receiving a creation request comprising the virtual machine parameters” which is merely insignificant extra-solution data gathering activity (see MPEP § 2106.05(g)) which does not integrate a judicial exception into practical application. Further, the data gathering is also WURC, see at least MPEP § 2106.05(d)(II) “The courts have recognized the following computer functions as well‐understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity. i. Receiving or transmitting data over a network” wherein receiving a virtual machine creation request as claimed is receiving data over a network. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claims 5 and 15 also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, claims 5 and 15 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claims 6 and 16, they recite additional abstract ideas of “identifying, in the computing resource database, an unallocated computing resource satisfying the virtual machine parameters; and allocating, to the virtual machine, the unallocated computing resource” which, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think about and evaluate, from reviewing data, if an unallocated resource will meet the minimum requirements of a virtual machine, then allocate the resource. Further, the claims do not recite additional elements which does not integrate a judicial exception into a practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claims 6 and 16 also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, claims 6 and 16 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claims 7 and 17, they recite additional abstract ideas of “making a first determination, using an allocation database, that the virtual machine is fully utilizing the stranded computing resource, wherein identifying the unallocated computing resource is based on the first determination” which, as drafted, is a process that, but for the recitation of generic computing components, under its broadest reasonable interpretation, covers performance of the limitation in the mind. For example, a person can think and observe, judge and evaluate, from reviewing some data, if a resource is being fully utilized. Further, the claims do not recite additional elements which does not integrate a judicial exception into a practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claims 7 and 17 also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, claims 7 and 17 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claim 8, it recites additional elements of “wherein the stranded computing resource is a processor core in a processor, wherein the processor comprises a plurality of other processor cores allocated to a second virtual machine” which is merely a recitation of generic computing components used in a field of use/technological environment (see MPEP § 2106.05(h)) which does not integrate a judicial exception into practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claim 8 also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, claim 8 does not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claims 9 and 18, they recite additional elements of “wherein the stranded computing resource is a memory region on a memory device, wherein the memory device comprises a plurality of other memory regions allocated to a second virtual machine” which is merely a recitation of generic computing components used in a field of use/technological environment (see MPEP § 2106.05(h)) which does not integrate a judicial exception into practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claims 9 and 18 also fail both Step 2A prong 2, thus the claims are directed to the judicial exception as it has not been integrated into practical application, and fail Step 2B as not amounting to significantly more. Therefore, claims 9 and 18 do not recite patent eligible subject matter under 35 U.S.C. § 101. Regarding claim 10, it recites additional elements of “wherein the stranded computing resource is a graphics processing unit in a computing device, wherein the computing device comprises a plurality of other graphics processing units allocated to a second virtual machine” which is merely a recitation of generic computing components used in a field of use/technological environment (see MPEP § 2106.05(h)) which does not integrate a judicial exception into practical application. For the same reasons as above with regard to integration into practical application and whether additional elements amount to significantly more, claim 10 also fails both Step 2A prong 2, thus the claim is directed to the judicial exception as it has not been integrated into practical application, and fails Step 2B as not amounting to significantly more. Therefore, claim 10 does not recite patent eligible subject matter under 35 U.S.C. § 101. 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-3, 5, 8-9, 11-13, 15, 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Agarwal et al. US 20250036448 A1 (Agarwal) in view of Ma et al. US 11799739 B1 (Ma) and further in view of Fu et al. (U.S. 2020/0371841). Regarding claim 1, Agarwal teaches A method for allocating stranded computing resources, the method comprising: ([0004]: “These embodiments then initiate migration of one or more VMs away from these hosting nodes, thereby making these stranded resources available for VM allocations or other purposes… Since deploying a VM involves using both memory and processing capacity, lack of one of these types of resource means that it is not possible to deploy a VM and the remaining available resource of the other type is “stranded.” The type of resource which is insufficiently available for VM deployment is referred to as a bottleneck resource.”) obtaining, by a virtual machine manager, ([0036]: “FIG. 2 illustrates an example computer architecture 200 that facilitates automated recovery of stranded resources within a cloud computing environment. As shown, computer architecture 200 includes a stranded resource rescue system 201 (rescue system 201) that recovers stranded resources within a plurality of nodes 216 (i.e., node 216a to node 216n) of one or more cloud computing environments (e.g., one or more datacenters).”; [0110]: “Some embodiments, such as a cloud computing environment, may comprise a system that includes one or more hosts that are each capable of running one or more virtual machines...In some embodiments, each host includes a hypervisor that emulates virtual resources for the virtual machines using physical resources that are abstracted from view of the virtual machines.” Examiner notes, resource recovery system runs in a cloud environment and manages the migration and allocation of VMs with a hypervisor.) virtual machine parameters for a virtual machine; ([0053]: “…the stranded node identification component 205 considers attributes of one or more VMs that are, or that could be, allocated [to] one or more of nodes 216. In one example, the stranded node identification component 205 considers an available VM template definition that defines, e.g., an amount of memory, a number of CPU cores, etc. required for a VM instantiated based on the VM template definition. In another example, the stranded node identification component 205 considers a set of potential VMs that are valid to place on one or more of nodes 216 (e.g., due to policy, contractual, security, or other reasons).”; Examiner notes, resource recovery system obtains and considers the resource requirements of every VM both assigned and to be assigned. Further, the resource recovery system also obtains and considers various constraints as parameters such as if the VM is short lived (see at least [0056]) and a VM priority (see at least [0061]).) wherein the virtual machine parameters comprises a plurality of computing resources required to execute the virtual machine, a plurality of policies of the virtual machine, and customer information (e.g. paragraphs [0003, 0053-0054, and 0064] these parameters includes all the information to run including requirements associated with resource, policy and customer data); identifying, in a computing resource database, a resource entry corresponding to a stranded computing resource ([0040]: “In additional, or alternative, embodiments, the measuring component 202 collects these signals indirectly via a monitoring component 214 which, in embodiments, monitors overall stranded resources across one or more cloud computing environments. In embodiments, measurements include information sufficient to determine an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like.”; Fig. 2, [0036]: “As shown, computer architecture 200 includes a stranded resource rescue system 201 (rescue system 201) that recovers stranded resources within a plurality of nodes 216 (i.e., node 216a to node 216n) of one or more cloud computing environments (e.g., one or more datacenters). Each of nodes 216 includes resources 217 (i.e., resources 217a in node 216a, resources 217n in node 216n, etc.). In embodiments, resources 217 comprise memory resources, CPU resources (e.g., CPU cores), disk resources (e.g., storage and I/O), network resources, and the like.”) wherein the stranded computing resource comprises an unused portion of a physical computing resource, wherein a remainder of the physical computing resource is being used, and wherein the remainder of the physical computing resource corresponds to more than 87.5% of the physical computing resource (e.g. abstract and Figures 1 with standard stranded resource illustration); Agarwal does not teach (1) in a computing resource database, wherein the stranded computing resource satisfies the virtual machine parameters; allocating, to the virtual machine, the stranded computing resource thereby enabling use of the stranded computing resource; and initiating the virtual machine using the stranded computing resource. (Examiner notes, though Agarwal does teach identifying parameters, stranded resources, and allocating VMs, it only suggests identifying if an arriving (Agarwal refers to them as “predicted”) VM allocation is satisfied by the stranded resources, see at least above citations, [0034], [0053], and [0100]) and (2) performing a lookup, by the virtual machine manager, in a computing resource database, wherein the computing resource database comprises a plurality of resource entries, wherein each resource entry of the plurality of resource entries comprises a resource identifier and a computing device identifier, wherein the computing resource database further comprises resource specifications and resource utilization data. However, in analogous art, Ma teaches identifying, in a computing resource database, (Col. 4, lines 27-32: “FIG. 1 depicts an example architecture 100 in accordance with implementations of the present disclosure…The server systems 104, 106 each include one or more server devices and databases 108”; Col. 6, lines 58-61: “In some examples, for each physical node in the set of physical nodes, a physical node vector (P) is retrieved by the correlation module 204 from the physical node vector pool 208.”; Col. 7, lines 16-19: “In some examples, the physical node vector of the physical node is updated within the physical node vector pool 208 to reflect a change in available resources that accounts for the VM being deployed thereon.”; Examiner notes, in some embodiments, available and allocated resources of each node are stored in a vector that the correlation module can retrieve to execute its functions (see at least Col. 5, lines 26-37 for a definition of the vector P).) a stranded computing resource, wherein the stranded computing resource satisfies the virtual machine parameters; (Fig. 3A, 3B, 4, Col. 6, lines 4-25: “In accordance with implementations of the present disclosure, a correlation methodology is applied to determine correlation between a VMs and physical nodes. In some implementations, the correlation methodology includes the Pearson correlation, which can be described as a measure of linear correlation between two sets of data. In the context of the present disclosure, the Pearson correlation represents a degree to which the physical node is complementary to the VM. The following example relationship is provided: (Examiner notes, see equation) where ρ.sub.V,P is a correlation coefficient that is determined across t pairs of VMs and physical nodes based on the respective normalized vectors, V is the mean value of all elements in a single vector V, and P is the mean value of all elements in a single vector P.”; Examiner notes, Ma’s use of “complementary” means allocating a VM to a physical node that will reduce “resource wastage” (stranding, see at least Col. 4, lines 4-26) the most, as shown in Figs. 3A and 3B. The two datasets used in the correlation are P, the resource states of each resource of each physical node, and V, the requirements (parameters) of each VM, see at least Col. 5, lines 7-37. Therefore, Ma is assigning VMs to use as many wasted resources as possible.) allocating, to the virtual machine, the stranded computing resource thereby enabling use of the stranded computing resource; and initiating the virtual machine using the stranded computing resource. (Col. 7, lines 1-16: “In accordance with implementations of the present disclosure, the correlation module 204 selects a physical node, to which the VM is to be deployed to based on the distances. For example, the physical node having a distance that is a minimum to the VM is selected as the physical node to which the VM is to be deployed. In response, the correlation module 204 transmits instructions to the deployment module 206 to deploy the VM to the physical node. For example, the instructions can include a reference to the VM (e.g., an identifier that uniquely identifies the VM) and a reference to the physical node (e.g., an identifier that uniquely identifies the physical node). In response to the instructions, the deployment module 206 retrieves the VM (e.g., from a file repository) and transmits the VM to the physical node with instructions for the physical node to install and execute the VM thereon.”). In addition, Fu et al. disclose performing a lookup, by the virtual machine manager, in a computing resource database, wherein the computing resource database comprises a plurality of resource entries, wherein each resource entry of the plurality of resource entries comprises a resource identifier and a computing device identifier, wherein the computing resource database further comprises resource specifications and resource utilization data (e.g. abstract and paragraphs [0034-0036 and 0108] disclosing the concept of utilizing table/lookup table in memory for desired information). It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the teachings for allocating VMs to reduce stranded resources in Ma, with the VM migration system for identifying and rescuing stranded resources in Agarwal. Agarwal teaches considering VM parameters when migrating and allocating VMs, but only suggests allocating the new VMs too the stranded resources (in at least [0034], [0053], and [0100]). Agarwal migrates VMs based upon a scoring system to either use or free stranded resources, and then can allocate the new VM to the freed space. However, after the migration process is completed, Agarwal is silent as to whether the new VMs are allocated with the goal of also reducing stranded resources. Thus, with the addition of Ma, Agarwal will not only free stranded resources by migrating VMs, allowing those resources to be used, but will consider resource stranding when allocating new VMs and storing those metrics used for the considerations as Ma does, minimizing the rate at which stranded resources are accumulated in the cloud environment. In additional, combining the concept of lookup operation as seen in Fu et al.’s invention for the limitation of “performing a lookup, by the virtual machine manager, in a computing resource database, wherein the computing resource database comprises a plurality of resource entries, wherein each resource entry of the plurality of resource entries comprises a resource identifier and a computing device identifier, wherein the computing resource database further comprises resource specifications and resource utilization data” into Agarwal’s invention. As a result, Ma’s teachings would realize Agarwal capable of mitigating resource stranding in two ways, and would decrease the rate Agarwal’s migration procedure would need to execute to maintain the environment. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, to more effectively resolve Agarwal’s stated problem in [0003] “Cloud computing environments are subject to fragmentation of the available resources within the nodes making up the cloud computing environment. One form of fragmentation is the stranding of node resources due to resource bottlenecks. In particular, depending on which one or more virtual machines (VMs) are allocated to a node, and depending on resource requirements of those VM(s), it is possible that one or more of the node's resources cannot be fully used and is thus “stranded.” In particular, when one “bottleneck” resource is fully or nearly fully consumed by the allocated VM(s), allocations of an additional VM to the node may be blocked, causing a “stranded” resource at the node to remain unused, hence wasting that resource.” In addition, the combination of Fu et al. into Agarwal would enable to efficient retrieving the desired information in timely manner in order to speed the process. Regarding claim 2, Agarwal in view of Ma and Fu et al. teaches the method of claim 1. Agarwal in view of Ma further teaches wherein identifying the stranded computing resource comprises: making a first determination, using the computing resource database, (Examiner notes, using a computing resource database for the determinations is taught in Ma, Col. 4, lines 27-32 and Col. 7, lines 16-19 as cited in the independent claim.) that the stranded computing resource is unused. (Agarwal, [0004]: “At least some embodiments described herein use measurements of node resources within a cloud computing environment to identify VM hosting nodes that have stranded resources. In embodiments, measurements include an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like.”). Regarding claim 3, Agarwal in view of Ma and Fu et al. teaches the method of claim 2. Agarwal further teaches wherein based on the first determination, the method further comprises: deallocating the stranded computing resource from a second virtual machine. ([0004]: “At least some embodiments described herein use measurements of node resources within a cloud computing environment to identify VM hosting nodes that have stranded resources. In embodiments, measurements include an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like. These embodiments then initiate migration of one or more VMs away from these hosting nodes, thereby making these stranded resources available for VM allocations or other purposes.”; Examiner notes, Agarwal migrates many virtual machines in the cloud environment, therefore would have to deallocate the resources to at least a second virtual machine). Regarding claim 5, Agarwal in view of Ma and Fu et al. teaches the method of claim 1. Agarwal further teaches wherein obtaining the virtual machine parameters comprises: receiving a creation request comprising the virtual machine parameters. ([0021]: “In some aspects of the techniques described herein, identifying the set of candidate nodes also includes at least one of: considering a first resource configuration of a first individual VM that is queued for allocation within the plurality of nodes”; [0053]: “In another example, the stranded node identification component 205 considers current set of VMs (including the resources required by those VMs) that are queued for placement. In another example, the stranded node identification component 205 considers a predicted set of VMs that will need to be generated in an upcoming time period (e.g., hour, N hours, etc.).”; Examiner notes, Agarwal in view of Ma is capable of creating new VMs fit to its requirements and constraints). Regarding claim 8, Agarwal in view of Ma and Fu et al. teaches the method of claim 1. Agarwal further teaches wherein the stranded computing resource is a processor core in a processor, ([0068]: “In an example, the VM sorting component 211 uses a scoring function that measures a degree of imbalance between a stranded resource at the node and a bottleneck resource used by at least one VM at the node. This measurement quantifies the contribution of individual VMs to causing the stranding of the stranded resource on the node. For example, for a scenario where one or more of a node's CPU cores are stranded due to the node's memory being full, the migration of a VM whose memory utilization exceeds the CPU core utilization at a greater level than another VM has the strongest effect in rescuing the stranded CPU core(s).”; Examiner notes, [0044-0046] discloses a general equation for determining if any individual resource is stranded, examples of resources are in at least [0002].) wherein the processor comprises a plurality of other processor cores ([0002]: “Examples of physical resources include processing capacity (e.g., central processing unit cores), memory, disk space, network bandwidth, media drives, and so forth.”; Examiner notes, a CPU comprises cores.) allocated to a second virtual machine. ([0033]: “In another example, one or more VMs allocated to a node fully utilize the CPU cores of the node and unused memory is rendered stranded.”; Examiner notes, CPU cores are allocated to a node, and each VM runs using some proportion of the cores). Regarding claim 9, Agarwal in view of Ma and Fu et al. teaches the method of claim 1. Agarwal further teaches wherein the stranded computing resource is a memory region on a memory device, wherein the memory device comprises a plurality of other memory regions allocated to a second virtual machine. ([0038]: “in another embodiment the rescue system 201 rescues stranded memory on a node where the VMs 218 hosted at those nodes have utilized all or almost all the node's CPU cores"; Examiner notes, [0044-0046] discloses a general equation for determining if any individual resource is stranded, examples of resources are in at least [0002]; [0032]: “FIG. 1B, for example, illustrates an example 100b of an almost exhausted memory resource as a bottleneck resource causing stranded CPU resources. In particular, example 100b shows a node that has 512 GB of total memory and 40 CPU cores, with 2 GB of unallocated memory and 10 unallocated cores. Here, even though the node's memory is not fully utilized, the remaining memory may be insufficient to enable allocation of an additional VM at the node (e.g., the smallest memory needed by any VM is 8 GB), leading to stranded CPU cores.”; Examiner notes, an amount of memory corresponds to the amount of regions on a memory device (number of bytes). As the memory of the node is filled with VMs, regions of the memory device are being allocated for each VM, thus at least “a second virtual machine”). Regarding claim 11, it is a medium claim having similar limitations as cited in the rejection of claim 1. Thus, claim 11 is also rejected under the same rationale as cited in the rejection of claim 1 above. Regarding claim 12, Agarwal in view of Ma and Fu et al. teaches the non-transitory computer readable medium of claim 11. Agarwal in view of Ma further teaches wherein identifying the stranded computing resource comprises: making a first determination, using the computing resource database, (Examiner notes, using a computing resource database for the determinations is taught in Ma, Col. 4, lines 27-32 and Col. 7, lines 16-19 as cited in the independent claim.) that the stranded computing resource is unused. (Agarwal, [0004]: “At least some embodiments described herein use measurements of node resources within a cloud computing environment to identify VM hosting nodes that have stranded resources. In embodiments, measurements include an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like.”). Regarding claim 13, Agarwal in view of Ma and Fu et al. teaches the non-transitory computer readable medium of claim 12. Agarwal further teaches wherein based on the first determination, the method further comprises: deallocating the stranded computing resource from a second virtual machine. ([0004]: “At least some embodiments described herein use measurements of node resources within a cloud computing environment to identify VM hosting nodes that have stranded resources. In embodiments, measurements include an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like. These embodiments then initiate migration of one or more VMs away from these hosting nodes, thereby making these stranded resources available for VM allocations or other purposes.”; Examiner notes, Agarwal migrates many virtual machines in the cloud environment, therefore would have to deallocate the resources to at least a second virtual machine). Regarding claim 15, Agarwal in view of Ma and Fu et al. teaches the non-transitory computer readable medium of claim 11. Agarwal further teaches wherein obtaining the virtual machine parameters comprises: receiving a creation request comprising the virtual machine parameters. ([0021]: “In some aspects of the techniques described herein, identifying the set of candidate nodes also includes at least one of: considering a first resource configuration of a first individual VM that is queued for allocation within the plurality of nodes”; [0053]: “In another example, the stranded node identification component 205 considers current set of VMs (including the resources required by those VMs) that are queued for placement. In another example, the stranded node identification component 205 considers a predicted set of VMs that will need to be generated in an upcoming time period (e.g., hour, N hours, etc.).”; Examiner notes, Agarwal in view of Ma is capable of creating new VMs fit to its requirements and constraints). Regarding claim 18, Agarwal in view of Ma and Fu et al. teaches the non-transitory computer readable medium of claim 11. Agarwal further teaches wherein the stranded computing resource is a memory region on a memory device, wherein the memory device comprises a plurality of other memory regions allocated to a second virtual machine. ([0038]: “in another embodiment the rescue system 201 rescues stranded memory on a node where the VMs 218 hosted at those nodes have utilized all or almost all the node's CPU cores"; Examiner notes, [0044-0046] discloses a general equation for determining if any individual resource is stranded, examples of resources are in at least [0002]; [0032]: “FIG. 1B, for example, illustrates an example 100b of an almost exhausted memory resource as a bottleneck resource causing stranded CPU resources. In particular, example 100b shows a node that has 512 GB of total memory and 40 CPU cores, with 2 GB of unallocated memory and 10 unallocated cores. Here, even though the node's memory is not fully utilized, the remaining memory may be insufficient to enable allocation of an additional VM at the node (e.g., the smallest memory needed by any VM is 8 GB), leading to stranded CPU cores.”; Examiner notes, an amount of memory corresponds to the amount of regions on a memory device (number of bytes). As the memory of the node is filled with VMs, regions of the memory device are being allocated for each VM, thus at least “a second virtual machine”). Regarding claim 19, it is a device claim having similar limitations as cited in the rejection of claim 1. Thus, claim 19 is also rejected under the same rationale as cited in the rejection of claim 1 above. Regarding claim 20, Agarwal in view of Ma and Fu et al. teaches the computing device of claim 19. Agarwal in view of Ma further teaches wherein identifying the stranded computing resource comprises: making a first determination, using the computing resource database, (Examiner notes, using a computing resource database for the determinations is taught in Ma, Col. 4, lines 27-32 and Col. 7, lines 16-19 as cited in the independent claim.) that the stranded computing resource is unused; (Agarwal, [0004]: “At least some embodiments described herein use measurements of node resources within a cloud computing environment to identify VM hosting nodes that have stranded resources. In embodiments, measurements include an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like.”) and based on the first determination: deallocating the stranded computing resource from a second virtual machine. (Agarwal, [0004]: “At least some embodiments described herein use measurements of node resources within a cloud computing environment to identify VM hosting nodes that have stranded resources. In embodiments, measurements include an amount of available memory at a node, a number of unallocated CPU cores or unused CPU cycles at a node, an amount of available disk space at a node, an amount of available network bandwidth at a node, and the like. These embodiments then initiate migration of one or more VMs away from these hosting nodes, thereby making these stranded resources available for VM allocations or other purposes.”; Examiner notes, Agarwal migrates many virtual machines in the cloud environment, therefore would have to deallocate the resources to at least a second virtual machine). Claims 4 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Agarwal et al. US 20250036448 A1 (Agarwal) in view of Ma et al. US 11799739 B1 (Ma) and Fu et al. (U.S. 2020/0371841), further in view of Barsness et al. US 20090007125 A1 (Barsness). Regarding claim 4, Agarwal in view of Ma and Fu et al. teaches the method of claim 3. Agarwal in view of Ma further teaches second virtual machine parameters, wherein the second virtual machine parameters are associated with the second virtual machine; (Agarwal, [0053]: “…the stranded node identification component 205 considers attributes of one or more VMs that are, or that could be, allocated [to] one or more of nodes 216. In one example, the stranded node identification component 205 considers an available VM template definition that defines, e.g., an amount of memory, a number of CPU cores, etc. required for a VM instantiated based on the VM template definition. In another example, the stranded node identification component 205 considers a set of potential VMs that are valid to place on one or more of nodes 216 (e.g., due to policy, contractual, security, or other reasons).”; Examiner notes, resource recovery system obtains and considers the resource requirements of every VM both assigned and to be assigned, therefore a second virtual machine and parameters for that virtual machine (see at least [0021]). Further, the resource recovery system also obtains and considers various constraints as parameters such as if the VM is short lived (see at least [0056]) and a VM priority (see at least [0061])). Agarwal in view of Ma does not teach wherein after initiating the virtual machine, the method further comprises: making a second determination, using an allocation database, that second virtual machine parameters are violated, wherein the second virtual machine parameters are associated with the second virtual machine; and based on the second determination: deallocating the stranded computing resource from the virtual machine; and re-allocating the stranded computing resource to the second virtual machine. However, in analogous art, Barsness teaches wherein after initiating the virtual machine, ([0013]: “Resource usage is monitored in a first logical partition in the logically partitioned multiprocessor environment to predict a future underutilization of a resource in the first logical partition. An application executing in a second logical partition in the logically partitioned multiprocessor environment may be configured for execution in the second logical partition.”; Examiner notes, Barsness operates while VMs are running, therefore “after initiating the virtual machine”.) the method further comprises: making a second determination, using an allocation database, (Fig. 5, [0044]: “FIG. 5 is a table showing example commands that may be monitored. Each of these commands may cause a partition to give up its CPU for a certain period of time. For example, if in a partition A a PWRDWNSYS command is issued, and statistical data as discussed above has been collected for the command to predict the amount of time for the IPL, other partitions will know that for a given period of time after the PWRDWNSYS command has been executed, that these other partitions will have cycles available for processing.”; Examiner notes, stored data on resources available for reallocation, resulting from executed commands, is used to predict when to reallocate an unutilized resource.) that second virtual machine parameters are violated, wherein the second virtual machine parameters are associated with the second virtual machine; and based on the second determination: deallocating the stranded computing resource from the virtual machine; and re-allocating the stranded computing resource to the second virtual machine. ([0049]: “The resource manager may also watch for broken patterns. Broken patterns occur when the partition that has given up resource due to underutilization of a resource suddenly begins to use the resource. When this occurs, the procedure is similar to that above in FIG. 8 when the resource becomes unavailable. Any jobs that require the additional resource are suspended. Query optimizers for database queries are notified of the reduction in CPU resource and the resource is reallocated to the original partition.”; Examiner notes [0034] of the instant specification: “In one or more embodiments, a stranded computing resource (or stranded resource) is an unused and/or unallocated computing resource where most of the rest of the physical hardware components has been allocated.”). It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the returning of a re-allocated resource from one partition to an original partition in Barsness with the resource recovery system for stranded resources in Agarwal in view of Ma. Agarwal in view of Ma already considers a priority of VMs (in at least Agarwal, [0061]) and measures resource utilization across the nodes and VMs (in at least Agarwal, [0038]), thus with Barsness’ teachings, would re-allocate idle resources from one VM to another VM if the former VM was leaving resources unutilized. Further, if the original VM, which could have a higher priority, tried to utilize its resource that was re-allocated, Agarwal in view of Ma would then return that resource to the original VM, maintaining its compliance with its minimum resource requirements and constraints (Agarwal, in at least [0021]). A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, to further improve resource utilization in Agarwal in view of Ma. One of the goals of Agarwal in view of Ma is mitigating resource stranding (Agarwal, [0003-0004]), however resource stranding is an aspect of resource utilization, as large amounts of stranded resources decrease resource utilization. Further, as stated in Agarwal, [0005], the purpose of Agarwal in view of Ma is to “improve [the] efficiency of resource utilization within cloud computing environments”. Therefore, with the addition of Barsness’ teachings, Agarwal in view of Ma will more effectively achieve these goals. Regarding claim 14, the non-transitory computer readable medium of claim 13. Agarwal in view of Ma and Fu et al. further teaches second virtual machine parameters, wherein the second virtual machine parameters are associated with the second virtual machine; (Agarwal, [0053]: “…the stranded node identification component 205 considers attributes of one or more VMs that are, or that could be, allocated [to] one or more of nodes 216. In one example, the stranded node identification component 205 considers an available VM template definition that defines, e.g., an amount of memory, a number of CPU cores, etc. required for a VM instantiated based on the VM template definition. In another example, the stranded node identification component 205 considers a set of potential VMs that are valid to place on one or more of nodes 216 (e.g., due to policy, contractual, security, or other reasons).”; Examiner notes, resource recovery system obtains and considers the resource requirements of every VM both assigned and to be assigned, therefore a second virtual machine and parameters for that virtual machine (see also [0021]). Further, the resource recovery system also obtains and considers various constraints as parameters such as if the VM is short lived (see at least [0056]) and a VM priority (see at least [0061])). Agarwal in view of Ma and Fu et al. does not teach wherein after initiating the virtual machine, the method further comprises: making a second determination, using an allocation database, that second virtual machine parameters are violated, wherein the second virtual machine parameters are associated with the second virtual machine; and based on the second determination: deallocating the stranded computing resource from the virtual machine; and re-allocating the stranded computing resource to the second virtual machine. However, in analogous art, Barsness teaches wherein after initiating the virtual machine, ([0013]: “Resource usage is monitored in a first logical partition in the logically partitioned multiprocessor environment to predict a future underutilization of a resource in the first logical partition. An application executing in a second logical partition in the logically partitioned multiprocessor environment may be configured for execution in the second logical partition.”; Examiner notes, Barsness operates while VMs are running, therefore “after initiating the virtual machine”.) the method further comprises: making a second determination, using an allocation database, (Fig. 5, [0044]: “FIG. 5 is a table showing example commands that may be monitored. Each of these commands may cause a partition to give up its CPU for a certain period of time. For example, if in a partition A a PWRDWNSYS command is issued, and statistical data as discussed above has been collected for the command to predict the amount of time for the IPL, other partitions will know that for a given period of time after the PWRDWNSYS command has been executed, that these other partitions will have cycles available for processing.”; Examiner notes, stored data on resources available for reallocation, resulting from executed commands, is used to predict when to reallocate an unutilized resource.) that second virtual machine parameters are violated, wherein the second virtual machine parameters are associated with the second virtual machine; and based on the second determination: deallocating the stranded computing resource from the virtual machine; and re-allocating the stranded computing resource to the second virtual machine. ([0049]: “The resource manager may also watch for broken patterns. Broken patterns occur when the partition that has given up resource due to underutilization of a resource suddenly begins to use the resource. When this occurs, the procedure is similar to that above in FIG. 8 when the resource becomes unavailable. Any jobs that require the additional resource are suspended. Query optimizers for database queries are notified of the reduction in CPU resource and the resource is reallocated to the original partition.”; Examiner notes [0034] of the instant specification: “In one or more embodiments, a stranded computing resource (or stranded resource) is an unused and/or unallocated computing resource where most of the rest of the physical hardware components has been allocated.”). It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the returning of a re-allocated resource from one partition to an original partition in Barsness with the resource recovery system for stranded resources in Agarwal in view of Ma. Agarwal in view of Ma already considers a priority of VMs (in at least Agarwal, [0061]) and measures resource utilization across the nodes and VMs (in at least Agarwal, [0038]), thus with Barsness’ teachings, would re-allocate idle resources from one VM to another VM if the former VM was leaving resources unutilized. Further, if the original VM, which could have a higher priority, tried to utilize its resource that was re-allocated, Agarwal in view of Ma would then return that resource to the original VM, maintaining its compliance with its minimum resource requirements and constraints (Agarwal, in at least [0021]). A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, to further improve resource utilization in Agarwal in view of Ma. One of the goals of Agarwal in view of Ma is mitigating resource stranding (Agarwal, [0003-0004]), however resource stranding is an aspect of resource utilization, as large amounts of stranded resources decrease resource utilization. Further, as stated in Agarwal, [0005], the purpose of Agarwal in view of Ma is to “improve [the] efficiency of resource utilization within cloud computing environments”. Therefore, with the addition of Barsness’ teachings, Agarwal in view of Ma will more effectively achieve these goals. Claims 6-7 and 16-17 are rejected under 35 U.S.C. 103 as being unpatentable over Agarwal et al. US 20250036448 A1 (Agarwal) in view of Ma et al. US 11799739 B1 (Ma) and Fu et al. (U.S. 2020/0371841), further in view of Cai et al. US 20240320055 A1 (Cai). Regarding claim 6, Agarwal in view of Ma and Fu et al. teaches the method of claim 1. Agarwal in view of Ma and Fu et al. further teaches the method further comprises: identifying, in the computing resource database, (Ma, Col. 4, lines 27-32: “FIG. 1 depicts an example architecture 100 in accordance with implementations of the present disclosure…The server systems 104, 106 each include one or more server devices and databases 108”; Col. 6, lines 58-61: “In some examples, for each physical node in the set of physical nodes, a physical node vector (P) is retrieved by the correlation module 204 from the physical node vector pool 208.”; Col. 7, lines 16-19: “In some examples, the physical node vector of the physical node is updated within the physical node vector pool 208 to reflect a change in available resources that accounts for the VM being deployed thereon.”; Examiner notes, in some embodiments, resources of each node are stored in a vector that the correlation module can retrieve to execute its functions (see at least Col. 5, lines 26-37 for a definition of the vector P).) an unallocated computing resource satisfying the virtual machine parameters; (Ma, Fig. 3A, 3B, 4, Col. 6, lines 4-25: “In accordance with implementations of the present disclosure, a correlation methodology is applied to determine correlation between a VMs and physical nodes. In some implementations, the correlation methodology includes the Pearson correlation, which can be described as a measure of linear correlation between two sets of data. In the context of the present disclosure, the Pearson correlation represents a degree to which the physical node is complementary to the VM. The following example relationship is provided: (Examiner notes, see equation) where ρ.sub.V,P is a correlation coefficient that is determined across t pairs of VMs and physical nodes based on the respective normalized vectors, V is the mean value of all elements in a single vector V, and P is the mean value of all elements in a single vector P.”; Examiner notes, the two datasets used in the correlation are P, the resource states of each resource of each physical node, and V, the requirements (parameters) of each VM, see at least Col. 5, lines 7-37. Therefore, Ma is assigning unallocated resources.) and allocating, to the virtual machine, the unallocated computing resource. (Ma, Col. 7, lines 1-16: “In accordance with implementations of the present disclosure, the correlation module 204 selects a physical node, to which the VM is to be deployed to based on the distances. For example, the physical node having a distance that is a minimum to the VM is selected as the physical node to which the VM is to be deployed. In response, the correlation module 204 transmits instructions to the deployment module 206 to deploy the VM to the physical node. For example, the instructions can include a reference to the VM (e.g., an identifier that uniquely identifies the VM) and a reference to the physical node (e.g., an identifier that uniquely identifies the physical node). In response to the instructions, the deployment module 206 retrieves the VM (e.g., from a file repository) and transmits the VM to the physical node with instructions for the physical node to install and execute the VM thereon.”). Agarwal in view of Ma and Fu et al. does not teach wherein after initiating the virtual machine the method further comprises: identifying, in the computing resource database, an unallocated computing resource satisfying the virtual machine parameters; and allocating, to the virtual machine, the unallocated computing resource. (Examiner notes, though Agarwal in view of Ma teaches the actions of identifying in a database unallocated resources that satisfy VM parameters and allocating that unallocated resource (see above) it does not teach executing this process after the VM has already been initiated). However, in analogous art, Cai teaches wherein after initiating the virtual machine the method further comprises: identifying, in the computing resource database, ([0062]: “The controller-manager is configured to implement functions such as resource management of each worker node and each cloud instance in the cloud service system. The database is used to store configuration information in the cloud service system, for example, resource quotas of each cloud instance.”) an unallocated computing resource satisfying the virtual machine parameters; and allocating, to the virtual machine, the unallocated computing resource. ([0010]: “The first worker node may determine a quantity of idle resources of the first worker node, and detect whether the quantity of idle resources of the first worker node is greater than or equal to a quantity of resources required for scale-up.”; [0011]: “It can be learned from the foregoing method that after obtaining the status information of the plurality of cloud instances, the first worker node may determine, based on the status information, the to-be-scaled-up cloud instance from the plurality of cloud instances and the quantity of resources required for scale-up. If the quantity of idle resources of the first worker node is greater than or equal to the quantity of resources required for scale-up, the first worker node may increase the resource quota of the to-be-scaled-up cloud instance based on the quantity of resources required for scale-up.”; Examiner notes, if a node has unallocated resources after workloads are already operating, a virtual workload may be scaled up to use those resources, which would still satisfy the VM parameters since VM parameters can be a minimum resource requirement). It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the scale up method in Cai with the systems of Agarwal in view of Ma, allowing Agarwal in view of Ma to scale up the resources allocated to various VMs already running on a node. For example, in Agarwal Fig. 1B, instead of having to execute the stranded resource recovery procedure to migrate VMs, Agarwal in view of Ma would have the option of scaling up some of the VMs deployed on the node to utilize the remaining unallocated 2 GB of memory and 10 cores. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, to further increase resource utilization. Agarwal in view of Ma state the aim of the embodiments as improving efficiency of resource utilization (see at least Agarwal, [0005]). Further, one of the avenues for achieving this is decreasing resource stranding (see at least, Agarwal, [0004]). With Cai’s scaling teachings, it would offer Agarwal in view of Ma another process for utilizing stranded resources, therefore increasing resource utilization. Regarding claim 7, Agarwal in view of Ma, further in view of Cai teaches the method of claim 6. Agarwal in view of Ma and Fu et al., further in view of Cai further teaches wherein prior to identifying the unallocated computing resource, the method further comprises: making a first determination, using an allocation database, (Cai, [0062]: “The controller-manager is configured to implement functions such as resource management of each worker node and each cloud instance in the cloud service system. The database is used to store configuration information in the cloud service system, for example, resource quotas of each cloud instance.”; Examiner notes, to achieve the resource quota scaling, as previously combined, Cai refers to a database storing resource quota information. Therefore, would function the same in Agarwal in view of Ma, further in view of Cai.) that the virtual machine is fully utilizing the stranded computing resource, (Agarwal, [0040]: “As mentioned, the rescue system 201 uses measurements of resource utilization at the nodes 216. Thus, as shown, the rescue system 201 includes a measuring component 202 that collects signals regarding utilization of resources 217 at the nodes 216. In some embodiments, the measuring component 202 actively (e.g., via probing of the nodes 216) or passively (e.g., via listening to signal emitted by the nodes 216) collects these signals by directly communicating with each of nodes 216…”; [0039]: “In embodiments, the rescue system 201 operates in a fully- or semi-automatic manner, such as through a cloud or datacenter management fabric. For instance, in one embodiment the rescue system 201 operates continuously in the background and has configurable settings to run live migrations, such as a live migration on N nodes every M minutes.”; Examiner notes, the resource recovery system measures resource utilization at every node, and uses the resource utilization information to calculate resource stranding (see at least [0044-0052]). The recovery system may run actively, periodically, or passively, therefore would determine the cited information before choosing an unallocated or stranded resource to utilize.) wherein identifying the unallocated computing resource is based on the first determination. (Agarwal, [0041]: “Based on the signals measured by the measuring component 202, the rescue system 201 uses a candidate node selection component 203 to intelligently identify one or more nodes of the nodes 216 that currently have one or more stranded resources that are unutilized due to utilization of a corresponding bottleneck resource at the node. In embodiments, a stranded resource is stranded by utilization of a corresponding bottleneck resource due to the bottleneck resource being fully utilized (i.e., exhausted) at the node, such as in FIG. 1A where a fully exhausted memory resource creates a stranded CPU resource. In embodiments, a stranded resource is stranded by utilization of a corresponding bottleneck resource due to the bottleneck resource being almost fully utilized (e.g., 70% utilized, 90% utilized, etc.) at the node, such as in FIG. 1B where an almost exhausted memory resource creates a stranded CPU resource.”). Regarding claim 16, Agarwal in view of Ma teaches the non-transitory computer readable medium of claim 11. Agarwal in view of Ma and Fu et al. further teaches the method further comprises: identifying, in the computing resource database, (Ma, Col. 4, lines 27-32: “FIG. 1 depicts an example architecture 100 in accordance with implementations of the present disclosure…The server systems 104, 106 each include one or more server devices and databases 108”; Col. 6, lines 58-61: “In some examples, for each physical node in the set of physical nodes, a physical node vector (P) is retrieved by the correlation module 204 from the physical node vector pool 208.”; Col. 7, lines 16-19: “In some examples, the physical node vector of the physical node is updated within the physical node vector pool 208 to reflect a change in available resources that accounts for the VM being deployed thereon.”; Examiner notes, in some embodiments, resources of each node are stored in a vector that the correlation module can retrieve to execute its functions (see at least Col. 5, lines 26-37 for a definition of the vector P).) an unallocated computing resource satisfying the virtual machine parameters; (Ma, Fig. 3A, 3B, 4, Col. 6, lines 4-25: “In accordance with implementations of the present disclosure, a correlation methodology is applied to determine correlation between a VMs and physical nodes. In some implementations, the correlation methodology includes the Pearson correlation, which can be described as a measure of linear correlation between two sets of data. In the context of the present disclosure, the Pearson correlation represents a degree to which the physical node is complementary to the VM. The following example relationship is provided: (Examiner notes, see equation) where ρ.sub.V,P is a correlation coefficient that is determined across t pairs of VMs and physical nodes based on the respective normalized vectors, V is the mean value of all elements in a single vector V, and P is the mean value of all elements in a single vector P.”; Examiner notes, the two datasets used in the correlation are P, the resource states of each resource of each physical node, and V, the requirements (parameters) of each VM, see at least Col. 5, lines 7-37. Therefore, Ma is assigning unallocated resources.) and allocating, to the virtual machine, the unallocated computing resource. (Ma, Col. 7, lines 1-16: “In accordance with implementations of the present disclosure, the correlation module 204 selects a physical node, to which the VM is to be deployed to based on the distances. For example, the physical node having a distance that is a minimum to the VM is selected as the physical node to which the VM is to be deployed. In response, the correlation module 204 transmits instructions to the deployment module 206 to deploy the VM to the physical node. For example, the instructions can include a reference to the VM (e.g., an identifier that uniquely identifies the VM) and a reference to the physical node (e.g., an identifier that uniquely identifies the physical node). In response to the instructions, the deployment module 206 retrieves the VM (e.g., from a file repository) and transmits the VM to the physical node with instructions for the physical node to install and execute the VM thereon.”). Agarwal in view of Ma and Fu et al. does not teach wherein after initiating the virtual machine identifying, in the computing resource database, an unallocated computing resource satisfying the virtual machine parameters; and allocating, to the virtual machine, the unallocated computing resource. (Examiner notes, though Agarwal in view of Ma teaches the actions of identifying in a database unallocated resources that satisfy VM parameters and allocating that unallocated resource (see above) it does not teach executing this process after the VM has already been initiated). However, in analogous art, Cai teaches wherein after initiating the virtual machine, the method further comprises: identifying, in the computing resource database, ([0062]: “The controller-manager is configured to implement functions such as resource management of each worker node and each cloud instance in the cloud service system. The database is used to store configuration information in the cloud service system, for example, resource quotas of each cloud instance.”) an unallocated computing resource satisfying the virtual machine parameters; and allocating, to the virtual machine, the unallocated computing resource. ([0010]: “The first worker node may determine a quantity of idle resources of the first worker node, and detect whether the quantity of idle resources of the first worker node is greater than or equal to a quantity of resources required for scale-up.”; [0011]: “It can be learned from the foregoing method that after obtaining the status information of the plurality of cloud instances, the first worker node may determine, based on the status information, the to-be-scaled-up cloud instance from the plurality of cloud instances and the quantity of resources required for scale-up. If the quantity of idle resources of the first worker node is greater than or equal to the quantity of resources required for scale-up, the first worker node may increase the resource quota of the to-be-scaled-up cloud instance based on the quantity of resources required for scale-up.”; Examiner notes, if a node has unallocated resources after workloads are already operating, a virtual workload may be scaled up to use those resources, which would still satisfy the VM parameters since VM parameters can be a minimum resource requirement). It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the scale up method in Cai with the systems of Agarwal in view of Ma, allowing Agarwal in view of Ma to scale up the resources allocated to various VMs already running on a node. For example, in Agarwal Fig. 1B, instead of having to execute the stranded resource recovery procedure to migrate VMs, Agarwal in view of Ma would have the option of scaling up some of the VMs deployed on the node to utilize the remaining unallocated 2 GB of memory and 10 cores. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, to further increase resource utilization. Agarwal in view of Ma state the aim of the embodiments as improving efficiency of resource utilization (see at least Agarwal, [0005]). Further, one of the avenues for achieving this is decreasing resource stranding (see at least, Agarwal, [0004]). With Cai’s scaling teachings, it would offer Agarwal in view of Ma another process for utilizing stranded resources, therefore increasing resource utilization. Regarding claim 17, Agarwal in view of Ma, further in view of Cai teaches the non-transitory computer readable medium of claim 16. Agarwal in view of Ma and Fu et al., further in view of Cai further teaches wherein prior to identifying the unallocated computing resource, the method further comprises: making a first determination, using an allocation database, (Cai, [0062]: “The controller-manager is configured to implement functions such as resource management of each worker node and each cloud instance in the cloud service system. The database is used to store configuration information in the cloud service system, for example, resource quotas of each cloud instance.”; Examiner notes, to achieve the resource quota scaling, as previously combined, Cai refers to a database storing resource quota information. Therefore, would function the same in Agarwal in view of Ma, further in view of Cai.) that the virtual machine is fully utilizing the stranded computing resource, (Agarwal, [0040]: “As mentioned, the rescue system 201 uses measurements of resource utilization at the nodes 216. Thus, as shown, the rescue system 201 includes a measuring component 202 that collects signals regarding utilization of resources 217 at the nodes 216. In some embodiments, the measuring component 202 actively (e.g., via probing of the nodes 216) or passively (e.g., via listening to signal emitted by the nodes 216) collects these signals by directly communicating with each of nodes 216…”; [0039]: “In embodiments, the rescue system 201 operates in a fully- or semi-automatic manner, such as through a cloud or datacenter management fabric. For instance, in one embodiment the rescue system 201 operates continuously in the background and has configurable settings to run live migrations, such as a live migration on N nodes every M minutes.”; Examiner notes, the resource recovery system measures resource utilization at every node, and uses the resource utilization information to calculate resource stranding (see at least [0044-0052]). The recovery system may run actively, periodically, or passively, therefore would determine the cited information before choosing an unallocated or stranded resource to utilize.) wherein identifying the unallocated computing resource is based on the first determination. (Agarwal, [0041]: “Based on the signals measured by the measuring component 202, the rescue system 201 uses a candidate node selection component 203 to intelligently identify one or more nodes of the nodes 216 that currently have one or more stranded resources that are unutilized due to utilization of a corresponding bottleneck resource at the node. In embodiments, a stranded resource is stranded by utilization of a corresponding bottleneck resource due to the bottleneck resource being fully utilized (i.e., exhausted) at the node, such as in FIG. 1A where a fully exhausted memory resource creates a stranded CPU resource. In embodiments, a stranded resource is stranded by utilization of a corresponding bottleneck resource due to the bottleneck resource being almost fully utilized (e.g., 70% utilized, 90% utilized, etc.) at the node, such as in FIG. 1B where an almost exhausted memory resource creates a stranded CPU resource.”). Claim 10 is rejected under 35 U.S.C. 103 as being unpatentable over Agarwal et al. US 20250036448 A1 (Agarwal) in view of Ma et al. US 11799739 B1 (Ma) and Fu et al. (U.S. 2020/0371841), further in view of Gussin et al. US 11416306 B1 (Gussin). Regarding claim 10, Agarwal in view of Ma teaches the method of claim 1. Agarwal in view of Ma and Fu et al. does not teach wherein the stranded computing resource is a graphics processing unit in a computing device, wherein the computing device comprises a plurality of other graphics processing units allocated to a second virtual machine. However, in analogous art, Gussin teaches wherein the stranded computing resource is a graphics processing unit in a computing device, (Col. 6, line 64-Col. 7, line 1: “…the VM instances that have stranded unused GPU resources may be live migrated to other physical hosts without GPU resources to free up the demanded GPU resources.”; Examiner notes, consideration of GPUs as a stranded resource.) wherein the computing device comprises a plurality of other graphics processing units (Col. 5, lines 30-40: “As discussed, different physical hosts can have different resource configurations. Depending on which resources are demanded, based on future resource utilization, physical host types can be selected to provide those resources. For example, if more high-performance instance types are projected to be demanded, physical host 104C can be deployed which includes additional GPU resources 110H.”) allocated to a second virtual machine. (Col. 4, lines 1-5: “For example, one or more virtual machines of a first instance type (VM-A) and a second instance type (VM-B) can be deployed to host 104A and each instance allocated a portion of resources 110A-110C on host 104A.” Examiner notes, physical hosts that have GPUs as a resource would allocate some portion of those GPUs’ processing to the VMs on the host). It would have been obvious to a person having ordinary skill in the art prior to the effective filing date of the claimed invention to combine the physical hosts having GPUs in Gussin with the systems and methods of Agarwal in view of Ma. As a result, Agarwal in view of Ma would be capable of deploying VMs on nodes that require GPUs, thus would incorporate GPUs as another resource that will be measured and considered with the stranded resource recovery system and when assigning new VMs to utilize stranded resources. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, to increase the versatility of Agarwal in view of Ma, as Gussin describes that, increasingly, physical hosts must be able to host multiple different virtual machine types, and many of these types require GPUs for their workloads (see at least Col. 2, lines 18-44, and Col. 8, lines 12-17). Thus, with Gussin’s addition, Agarwal in view of Ma would be capable of hosting such VM types. oHOHsdf Response to Amendment The amendment filed 10/17/2025 is objected to under 35 U.S.C. 132(a) because it introduces new matter into the disclosure. 35 U.S.C. 132(a) states that no amendment shall introduce new matter into the disclosure of the invention. The added material which is not supported by the original disclosure is as follows: Re claims 1, 11, and 19, the newly added limitation “wherein the remainder of the physical computing resource corresponds to more than 87.5% of the physical computing resource” is not found/supported/described in the original specification. Applicant is required to cancel the new matter in the reply to this Office Action. Response to Arguments Applicant’s arguments with respect to claim(s) 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Conclusion 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. Any inquiry concerning this communication or earlier communications from the examiner should be directed to Chat C Do whose telephone number is (571)272-3721. The examiner can normally be reached {M - Th} 4:30am - 2: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, Dede Zecher can be reached at 571-272-0800. 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. /Chat C Do/Supervisory Patent Examiner, Art Unit 2193
Read full office action

Prosecution Timeline

Jan 26, 2023
Application Filed
Jul 14, 2025
Non-Final Rejection — §101, §103, §112
Oct 02, 2025
Interview Requested
Oct 09, 2025
Examiner Interview Summary
Oct 09, 2025
Applicant Interview (Telephonic)
Oct 17, 2025
Response Filed
Jan 27, 2026
Final Rejection — §101, §103, §112
Apr 13, 2026
Interview Requested

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12367035
METHOD OF IMPLEMENTING SOFTWARE ARCHITECTURE FOR COMMON USE OF WAYLAND PROTOCOL
2y 5m to grant Granted Jul 22, 2025
Patent 10949180
DYNAMICALLY CHANGING INPUT DATA STREAMS PROCESSED BY DATA STREAM LANGUAGE PROGRAMS
2y 5m to grant Granted Mar 16, 2021
Patent 9262308
TEST PATHS GENERATION FOR A PHYSICAL SYSTEM
2y 5m to grant Granted Feb 16, 2016
Patent 8561056
Automated Installation of Operating Systems on Virtual Machines Using Checksums of Screenshots
2y 5m to grant Granted Oct 15, 2013
Patent 7987222
METHOD AND APPARATUS FOR IMPLEMENTING A MULTIPLIER UTILIZING DIGITAL SIGNAL PROCESSOR BLOCK MEMORY EXTENSION
2y 5m to grant Granted Jul 26, 2011
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
43%
Grant Probability
52%
With Interview (+9.1%)
4y 11m
Median Time to Grant
Moderate
PTA Risk
Based on 178 resolved cases by this examiner. Grant probability derived from career allow 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