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 .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 04/03/2024. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Drawings
The drawings were received on 04/03/2024. These drawings are accepted.
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-20 are rejected under 35 U.S.C. 103 as being unpatentable over CONNOR et al. (US Pat No. 11960429 B2, hereinafter referred to as Connor) in view of Poppe et al. (USPGPUB No. 2025/0086012 A1, hereinafter referred to as Poppe).
Referring to claim 1, Connor discloses a method for compute resource allocation {“hardware resources, wherein each virtual machine includes its own CPU allocation, memory allocation”, see Fig. 9, Col 14, lines 55-58} for channel login activity {“seems users are always logged on to at least one service [via a channel] that is accessed via a computer network”, Background section, Col 1, lines 28-30}, comprising:
detecting a start of channel login activity {“either detect or be apprised of the arrival of packet 228 in system memory 206a or LL Cache 216a”, see Fig. 2a, Col 6, lines 22-23};
identifying a number of channels {“point-to-point interconnects are configured in unidirectional point-to-point interconnect pairs in opposing directions such that each link pair supports bi-directional communication”, see Fig. 5, Col 10, lines 14-17};
Connor does not appear to explicitly disclose identifying a number of channels anticipated to login during the channel login activity;
predicting, based on the identified number of channels, an anticipated number of processor cores in a plurality of processor cores of an input/output subsystem to be allocated to be able to handle the channel login activity;
and allocating the predicted number of processor cores to handle the channel login activity.
However, Poppe discloses disclose identifying a number of channels {“one or more [channel] wired and/or wireless portions”, see Figs. 3 and 12 [0130], last three sentences} anticipated to login {“anticipation of [login] activity from the user”, see Fig. 3, [0046]} during the channel login activity {“metrics may include a percentage of user logins [activity]”, see Fig. 3 [0066]};
Predicting {“predictive resume recommendations” (see Figs. 3 and 5, [0071]) based by the claimed identification performed by “model trainer 502 of FIG. 5 may be used to train ML model 346, as further described elsewhere herein” ([0072], last sentence)}, based on the identified number of channels {“Model trainer 502 may read historical [identified number of channels] user interaction data from long-term history store 506”, see Figs. 3 and 5 [0062]}, an anticipated number of processor cores {“let vcores(s) be the maximum vCores (i.e., “virtual core” representing a logical CPU)”, see Fig. 5, [0074]} in a plurality of processor cores {“Processor 1210 may be a single-core or multi-core processor, and each processor core”, see Fig. 12 [0133]} of an input/output subsystem {“data processing, input/output processing”, see Fig. 12 [0133]} to be allocated to be able to handle {“maintain the allocation of the resources to the user”, see Figs. 3 [0155], 1st sentence} the channel login activity {“maintain the allocation of the resources to [handle] the user during the predicted time period”, see Fig. 3 [0155]};
and allocating the predicted number of processor cores {“proactive decision maker 404 may predict the next resume time is far. In this case, allocated resources 348 transition from the Resumed State to the Physically Paused State”, see Fig. 6, [0082]} to handle the channel login activity {including allocating predicted cores/resources to channel login activity “the predicted [login activity] pause and resume pattern P (s, d, w) for a database s on a weekday d”, see Fig. 6 [0071], last sentence}.
Connor and Poppe are analogous because they are from the same field of endeavor, cloud service provider management.
Before the effective filing date of the claimed invention, it would have been obvious to one of ordinary skill in the art, having the teachings of Connor and Poppe before him or her, to modify Connor’s “hardware resources, wherein each virtual machine includes its own CPU allocation, memory allocation” (see Fig. 9, Col 14, lines 55-56) incorporating Poppe’s “proactive decision maker 404” (see Fig. 3, [0033]).
The suggestion/motivation for doing so would have been to implement a mechanism to determine whether to proactively pause resources that are allocated to a user who has logged out, the proactive resource allocator accesses historical data to predict a next time the user will log back in; which in turn the proactive resource allocator may logically pause the resources (i.e., maintain their allocation to the user, but halt charging the user for the allocated resources), or may physically pause the resources (i.e., reclaim the resources from the user (Poppe [0007] paraphrased) and such reactive policies tend to allocate and scale resources to customers in response to the active, ongoing needs of customers. A reactive approach to resource allocation works in real-time to make decisions on how to allocate and scale resources based on user demands (Poppe [0005], last two sentences).
Therefore, it would have been obvious to combine Poppe with Connor to obtain the invention as specified in the instant claim(s).
As per claim 2, the rejection of claim 1 is incorporated and Poppe discloses wherein allocating the predicted number of processor cores includes allocating one or more spare processor cores {“ period in which [processor] resources are idle (i.e., allocated to the user, yet [one or more spare] unused by the user”, see Figs. 10a, 10b [0112]}.
As per claim 3, the rejection of claim 1 is incorporated and Poppe discloses wherein allocating the predicted number of processor cores includes allocating one or more processor cores currently engaged in input/output activities {“Some devices can serve more than one input/output function”, see Fig. 12, [0138]} other than the channel login activity {“For instance, display 1254 may display information, as well as operating as touch screen 1232 by receiving user commands and/or other information (e.g., by touch, finger gestures, virtual keyboard, etc.) as a user interface [outside of login activity]”, see Fig. 12 [0138], last two sentences}.
As per claim 4, the rejection of claim 1 is incorporated and Poppe discloses further comprising:
monitoring the channel login activity {“Resource demand tracker 402 of proactive resource allocator 314 is configured to monitor and/or track user activity”, see Fig. 3 [0060], 1st sentence};
and deallocating {“Resource ‘scaling’ refers to allocating and/or deallocating resources to and from a user, based on the needs of the user” (see Figs. 1 and 2, [0030], last two sentences) example of “Reactive scaling policies may also result in inefficient resource allocation of a user who repeatedly logs in and out of a database” ([0039], 1st sentence)}, based on the monitoring {“Query processor 316 tracks the users that are logged into a database from a user device”, see Fig. 3 [0051], 2nd sentence}, one or more of the allocated number of processor cores {“proactive decision maker 404 may predict the next resume time is far. In this case, allocated resources 348 transition from the Resumed State to the Physically Paused State”, see Fig. 6, [0082]} from the channel login activity {“metrics may include a percentage of user logins [activity]”, see Fig. 3 [0066]}.
As per claim 5, the rejection of claim 4 is incorporated and Poppe discloses wherein the one or more of the allocated number of processor cores are deallocated {“Resource ‘scaling’ refers to allocating and/or deallocating resources to and from a user, based on the needs of the user” (see Figs. 1 and 2, [0030], last two sentences) example of “Reactive scaling policies may also result in inefficient resource allocation of a user who repeatedly logs in and out of a database” ([0039], 1st sentence)} in response to a threshold number of the channels {“analysis to [threshold] balance QoS and COGS by tuning model parameters”, see Figs. 5 and 6 [0075]} completing login {“shows two [completed] logins by the user”, see Fig. 8a, [0090], 3rd sentence}.
As per claim 6, the rejection of claim 1 is incorporated and Poppe discloses further comprising:
generating, by an artificial intelligence engine {“machine learning model, including a CNN (convolutional neural network)”, see Fig. 3 [0065], last sentence} based on the handling of the channel login activity, learning data {“Model trainer 502 may be configured to train [data] and generate trained ML model 346 according to any suitable type of machine learning model”, see Fig. 3 [0065], last sentence};
and training {“The machine learning training algorithm used by model trainer 502”, see Fig. 3 [0065], last two sentences}, based on the learning data, a model for predicting {“to train and generate trained ML model 346”, see Fig. 3 [0065], last two sentences} the anticipated number of processor cores {“let vcores(s) be the maximum vCores (i.e., “virtual core” representing a logical CPU)”, see Fig. 5, [0074]} for future channel login activity {“day that may be predicted to occur again on a present/future day [channel login activity]”, see Figs. 8a and 8b, [0095, last two sentences}.
As per claim 7, the rejection of claim 6 is incorporated and Poppe discloses further comprising:
sending the learning data to a centralized system {“to proactive resource allocator 314”, see Fig. 3 [0057]} to be used in training multiple server systems {“metrics evaluator 508 may be configured by a provider of database management server system 310”, see Fig. 3 [0066], 2nd sentence} in handling other channel login activity {“For instance, display 1254 may display information, as well as operating as touch screen 1232 by receiving user commands and/or other information (e.g., by touch, finger gestures, virtual keyboard, etc.) as a user interface [outside of login activity]”, see Fig. 12 [0138], last two sentences}.
Referring to claims 8-14 are system claim corresponding to the method claim of claim 1-7, respectively, thereby rejected under the same rationale as claims 1-7 recited above.
Referring to claims 15-20 are computer program product claim corresponding to the method claim of claim 1-7, respectively, thereby rejected under the same rationale as claims 1-7 recited above.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The following references are indicative the current state of the art regarding claim 1’s “channel login”, “artificial intelligence engine” or “learning data” (per claim 5): US 20250370819 A1, US 20250307011 A1, US 11989586 B1, US 11385939 B2, US 11334382 B2, US 20210365289 A1, US 20180239685 A1, and US 9965331 B2.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRISTOPHER A. BARTELS whose telephone number is (571)270-3182. The examiner can normally be reached on Monday-Friday 9:00a-5:30pm EST.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Dr. Henry Tsai can be reached on 571-272-4176. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/C. B./
Examiner, Art Unit 2184
/HENRY TSAI/Supervisory Patent Examiner, Art Unit 2184