DETAILED ACTION
1. This Office Action is taken in response to Applicants’ Amendments and Remarks filed on 11/30/2025 regarding application 18/421,212 filed on 1/24/2024.
Claims 1-20 are pending for consideration.
2. Response to Amendments and Remarks
Applicants’ amendments and remarks have been fully and carefully considered, with the Examiner’s response set forth below.
(1) In response to the amendments and remarks, an updated claim analysis has been made. Refer to the corresponding sections of the following Office Action for details.
3. Examiner’s Note
(1) In the case of amending the Claimed invention, Applicant is respectfully requested to indicate the portion(s) of the specification which dictate(s) the structure relied on for proper interpretation and also to verify and ascertain the metes and bounds of the claimed invention. This will assist in expediting compact prosecution. MPEP 714.02 recites: “Applicant should also specifically point out the support for any amendments made to the disclosure. See MPEP § 2163.06. An amendment which does not comply with the provisions of 37 CFR 1.121(b), (c), (d), and (h) may be held not fully responsive. See MPEP § 714.” Amendments not pointing to specific support in the disclosure may be deemed as not complying with provisions of 37 C.F.R. 1.131(b), (c), (d), and (h) and therefore held not fully responsive. Generic statements such as “Applicants believe no new matter has been introduced” may be deemed insufficient.
(2) Examiner has cited particular columns/paragraph and line numbers in the references applied to the claims above for the convenience of the applicant. Although the specified citations are representative of the teachings of the art and are applied to specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested from the applicant in preparing responses, to fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the Examiner.
Claim Rejections - 35 USC § 103
The following is a quotation of pre-AIA 35 U.S.C. 103(a) which forms the basis for all obviousness rejections set forth in this Office action:
A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negatived by the manner in which the invention was made.
4. Claim 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Suarez Garcia et al. (US Patent Application Publication 2017/0060633, hereinafter Garcia), in view of Ganju et al. (US Patent Application Publication 20240129380, hereinafter Ganju), and further in view of Karas (US Patent Application Publication 2024/0163251).
As to claim 1, Garcia teaches A method comprising:
requesting a migration time for performing a migration operation to migrate data from a source storage to a target storage [as shown in figures 3-7; In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005); Karas also teaches this limitation -- A system and method for securely exchanging information between a server and an endpoint. A firewall and switch may administer connections between the endpoint and the server. The network interface of the server may send and receive information through the firewall and switch. A program task in the sever may set the network interface to be in an “on state” for a predetermined amount of time on a specific date thereby creating an active time transfer window that the network interface can receive communications from the endpoint (abstract); Another configuration of the present invention may relate to a method of transferring data on a secure network … (¶ 0033)], wherein the migration time is requested from an awareness engine that includes a migration model configured to estimate the migration time [an awareness engine as shown in figure 1; as shown in figures 3-7; In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005); Karas also teaches this limitation -- … a demand prediction engine 269 (FIG. 2) configured to determine or predict demand at one or more scanning locations; a queue analyzer configured to determine demand by analyzing video or photos of people waiting in a queue … (¶ 0057)], wherein the migration time estimated by the migration model is a time for starting the migration operation [this limitation is taught by Karas -- The system of claim 1 comprising: a time transfer window generator configured to generate a time transfer window comprising a date, start time and end time; the time transfer window comprising a default duration; and a scheduling monitor configured to adjust the time transfer window based on how many endpoints are scheduled to send data packets; the scheduling monitor lengthening the time transfer window when it determines there has been an increase in size or number of recently received data packets; the scheduling monitor shortening the time transfer window when it determines there has been a decrease in size or number of recently received data packets (claim 6)];
migrating the data from the source to the target at the migration time, wherein the migration time determined by the awareness engine accounts for an anticipated energy cost migrating the data to the target storage based on forecasted conditions at the migration time [an awareness engine as shown in figure 1; data migrations as shown in figures 2A-2B; In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005); In block 302, the multi-processor computing device may generate a data transfer heuristic model based on measurements from a plurality of sample transfers between a plurality of data storage units. The multi-processor computing device may generate a data transfer heuristic model that may be used to predict or otherwise gauge the time and/or power (energy) consumption costs for transferring certain sizes of data between certain data storage units of the computing device. Such measurements may include time measurements and/or power (energy) consumption measurements and may be taken by the multi-processor computing device during a training period in which the multi-processor computing device obtains empirical data indicating latency and/or bandwidth, for various memories of the multi-processor computing device … (¶ 0054)], the forecasted conditions including environmental weather features related to the anticipated energy cost, energy production features related to the energy cost of producing the energy needed for the data migration at a source different from the source storage or the target storage, and features of the data [In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005);
Ganju more expressively teaches the aspect of “environmental weather features” -- At operation 405, processing logic receives a first condition associated with an operation at a data center, the operation at the data center pertaining to a first location and corresponding to a first parameter value. In some embodiments, the processing logic can receive a job request or operation request to execute at the data center … In at least one embodiment, the first condition represents at least one of a cooling condition associated with the operation, total data center energy consumption condition, water cooling condition, heat dissipation condition, air flow condition, condition associated with temperature, condition associated with weather forecasts, condition associated with location of adjacent operations, condition associated with location of all operations currently executing at the data center, thermal equilibrium conditions, electricity consumption condition, condition associated with electricity costs, a condition associated with a time associated with the operation, condition associated with a type of operation, or a condition associated with an amount of energy associated with executing the job. In at least one embodiment, the processing logic can train a machine learning model prior to receiving the condition or job request. In such embodiments, the processing logic can generate training data comprising an amount of energy associated with executing the operation and at least one of a cooling parameter associated with the operation, total data center energy consumption parameter, water cooling parameter, heat dissipation parameter, air flow parameter, parameter associated with temperature, parameter associated with weather forecasts, parameter associated with location of adjacent operations, parameter associated with location of all operations currently executing at the data center, thermal equilibrium parameter , electricity consumption parameter, parameter associated with electricity costs, a parameter associated with a time associated with the operation, data transfer associated with the operation, or type of operation and train the machine learning model with the training data. That is, the processing logic can map a respective thermal input (e.g., parameter) to how much energy is consumed, cooling is provided, or a temperature corresponding to the operation (e.g., water temperature or temperature at a node). In some embodiments, the processing logic can map the respective parameter to additional thermal values including but not limited to air flow rate, thermal equilibrium conditions, energy costs, heat dissipation rates, total energy consumed, etc. (¶ 0057-0058); A method comprising: receiving, using a processing device, a first condition associated with an operation at a data center, wherein the operation at the data center pertains to a first location at the data center, the first location corresponding to a first parameter value; providing the first condition as an input to a reinforcement learning agent comprising a machine learning model; obtaining an output of the reinforcement learning agent, the output comprising an indication of a final location associated with the operation, wherein the final location corresponds to a final parameter value that is closer to a target than the first parameter value corresponding to the first location at the data center; and providing a reward to the reinforcement learning agent, the reward corresponding to a comparison of the first parameter value and the final parameter value (claim 1)],
wherein the estimated migration time accounts for a size of the data and an amount of time required to migrate the data; and storing the migrated data at the target storage [an awareness engine as shown in figure 1; data migrations as shown in figures 2A-2B; In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005); In block 302, the multi-processor computing device may generate a data transfer heuristic model based on measurements from a plurality of sample transfers between a plurality of data storage units. The multi-processor computing device may generate a data transfer heuristic model that may be used to predict or otherwise gauge the time and/or power (energy) consumption costs for transferring certain sizes of data between certain data storage units of the computing device. Such measurements may include time measurements and/or power (energy) consumption measurements and may be taken by the multi-processor computing device during a training period in which the multi-processor computing device obtains empirical data indicating latency and/or bandwidth, for various memories of the multi-processor computing device … (¶ 0054); Karas also teaches this limitation -- Referring to FIG. 2, the server and/or hub may be configured to determine or predict demand at one or more scanning locations … A predictive algorithm can process data generated by the usage analyzer 246 to predict how many scans a given endpoint may need to process in on a future date, day of the week, or calendar date in a future time window (e.g., 5-7 PM on Fridays.) … (¶ 0058)].
Regarding claim 1, Garcia does not expressively teach the forecasted conditions including environmental weather features.
However, Ganju specifically teaches the forecasted conditions including environmental weather features related to the anticipated energy cost, energy production features related to the energy cost of producing the energy [At operation 405, processing logic receives a first condition associated with an operation at a data center, the operation at the data center pertaining to a first location and corresponding to a first parameter value. In some embodiments, the processing logic can receive a job request or operation request to execute at the data center … In at least one embodiment, the first condition represents at least one of a cooling condition associated with the operation, total data center energy consumption condition, water cooling condition, heat dissipation condition, air flow condition, condition associated with temperature, condition associated with weather forecasts, condition associated with location of adjacent operations, condition associated with location of all operations currently executing at the data center, thermal equilibrium conditions, electricity consumption condition, condition associated with electricity costs, a condition associated with a time associated with the operation, condition associated with a type of operation, or a condition associated with an amount of energy associated with executing the job. In at least one embodiment, the processing logic can train a machine learning model prior to receiving the condition or job request. In such embodiments, the processing logic can generate training data comprising an amount of energy associated with executing the operation and at least one of a cooling parameter associated with the operation, total data center energy consumption parameter, water cooling parameter, heat dissipation parameter, air flow parameter, parameter associated with temperature, parameter associated with weather forecasts, parameter associated with location of adjacent operations, parameter associated with location of all operations currently executing at the data center, thermal equilibrium parameter , electricity consumption parameter, parameter associated with electricity costs, a parameter associated with a time associated with the operation, data transfer associated with the operation, or type of operation and train the machine learning model with the training data. That is, the processing logic can map a respective thermal input (e.g., parameter) to how much energy is consumed, cooling is provided, or a temperature corresponding to the operation (e.g., water temperature or temperature at a node). In some embodiments, the processing logic can map the respective parameter to additional thermal values including but not limited to air flow rate, thermal equilibrium conditions, energy costs, heat dissipation rates, total energy consumed, etc. (¶ 0057-0058); A method comprising: receiving, using a processing device, a first condition associated with an operation at a data center, wherein the operation at the data center pertains to a first location at the data center, the first location corresponding to a first parameter value; providing the first condition as an input to a reinforcement learning agent comprising a machine learning model; obtaining an output of the reinforcement learning agent, the output comprising an indication of a final location associated with the operation, wherein the final location corresponds to a final parameter value that is closer to a target than the first parameter value corresponding to the first location at the data center; and providing a reward to the reinforcement learning agent, the reward corresponding to a comparison of the first parameter value and the final parameter value (claim 1)].
Therefore, it would have been obvious for one of ordinary skills in the art prior to Applicant’s invention to forecasted environmental weather features related to the anticipated energy cost, energy production features related to the energy cost of producing the energy, as specifically demonstrated by Ganju, and to incorporate it into the existing scheme disclosed by Garcia, because Ganju teaches doing so allows selecting the best location within a data center to perform the data operations [A method comprising: receiving, using a processing device, a first condition associated with an operation at a data center, wherein the operation at the data center pertains to a first location at the data center, the first location corresponding to a first parameter value; providing the first condition as an input to a reinforcement learning agent comprising a machine learning model; obtaining an output of the reinforcement learning agent, the output comprising an indication of a final location associated with the operation, wherein the final location corresponds to a final parameter value that is closer to a target than the first parameter value corresponding to the first location at the data center; and providing a reward to the reinforcement learning agent, the reward corresponding to a comparison of the first parameter value and the final parameter value (claim 1)].
Further regarding claim 1, Garcia in view of Ganju does not expressively teach the migration time estimated by the migration model is a time for starting the migration operation.
However, any data migration would have a starting and ending time, and a migration starting time is well known and commonly used in the art.
For example, Karas specifically teaches a migration time estimated by the migration model is a time for starting the migration operation [The system of claim 1 comprising: a time transfer window generator configured to generate a time transfer window comprising a date, start time and end time; the time transfer window comprising a default duration; and a scheduling monitor configured to adjust the time transfer window based on how many endpoints are scheduled to send data packets; the scheduling monitor lengthening the time transfer window when it determines there has been an increase in size or number of recently received data packets; the scheduling monitor shortening the time transfer window when it determines there has been a decrease in size or number of recently received data packets (claim 6)].
Therefore, it would have been obvious for one of ordinary skills in the art prior to Applicant’s invention to a time transfer window generator configured to generate a time transfer window comprising start time and end time, as specifically demonstrated by Karas, and to incorporate it into the existing scheme disclosed by Garcia in view of Ganju, in order to clearly define the time interval during which the data migration/transfer should occur.
As to claim 2, Garcia in view of Ganju & Karas teaches The method of claim 1, wherein the migration time comprises a migration window [Karas -- The system may be configured to provide secure transfer of data packets (upload and download) between endpoints and the server … A time transfer window generator 270 may generate a time window comprising a date, start time and end time may be approximately 5 minutes, 10 minutes, 15 minutes, or 20 minutes in duration. The time window may be open daily, open on certain days of the week, or open on certain days of the month. A scheduling monitor 272 in the server 200 may be configured adjust the time window based on how many endpoints are scheduled to send data packets and size of recently received data packets. In some configurations, the time transfer window is configured to occur randomly for each individual endpoint. The server may configure the time window to be open just long enough to securely upload and download the data packet from the endpoint. As previously described, the server may also require a nonstandard SSH communications port (e.g., 9176) or utilize a rotating port to further harden the system (¶ 0069)].
As to claim 3, Garcia in view of Ganju & Karas teaches The method of claim 1, further comprising generating the migration time by inputting features of the forecasted conditions including weather features and energy production features [Ganju -- At operation 405, processing logic receives a first condition associated with an operation at a data center, the operation at the data center pertaining to a first location and corresponding to a first parameter value. In some embodiments, the processing logic can receive a job request or operation request to execute at the data center … In at least one embodiment, the first condition represents at least one of a cooling condition associated with the operation, total data center energy consumption condition, water cooling condition, heat dissipation condition, air flow condition, condition associated with temperature, condition associated with weather forecasts, condition associated with location of adjacent operations, condition associated with location of all operations currently executing at the data center, thermal equilibrium conditions, electricity consumption condition, condition associated with electricity costs, a condition associated with a time associated with the operation, condition associated with a type of operation, or a condition associated with an amount of energy associated with executing the job. In at least one embodiment, the processing logic can train a machine learning model prior to receiving the condition or job request. In such embodiments, the processing logic can generate training data comprising an amount of energy associated with executing the operation and at least one of a cooling parameter associated with the operation, total data center energy consumption parameter, water cooling parameter, heat dissipation parameter, air flow parameter, parameter associated with temperature, parameter associated with weather forecasts, parameter associated with location of adjacent operations, parameter associated with location of all operations currently executing at the data center, thermal equilibrium parameter , electricity consumption parameter, parameter associated with electricity costs, a parameter associated with a time associated with the operation, data transfer associated with the operation, or type of operation and train the machine learning model with the training data. That is, the processing logic can map a respective thermal input (e.g., parameter) to how much energy is consumed, cooling is provided, or a temperature corresponding to the operation (e.g., water temperature or temperature at a node). In some embodiments, the processing logic can map the respective parameter to additional thermal values including but not limited to air flow rate, thermal equilibrium conditions, energy costs, heat dissipation rates, total energy consumed, etc. (¶ 0057-0058)], and features of the data from the source into a trained migration module configured to predict the migration time [Garcia -- In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005)].
As to claim 4, Garcia in view of Ganju & Karas teaches The method of claim 1, further comprising waiting for the migration time to arrive prior to performing the migration operation [Garcia -- For example, based on scheduler data indicating the dependencies of various tasks to certain buffer data, the multi-processor computing device may calculate an estimated time cost and/or estimated power (energy) consumption cost for transferring data of a buffer to the cache of a GPU … For example, based on data transfer costs of a first task and a second task to be performed on a first processing unit, the multi-processor computing device may schedule the first task to execute first due to having a lower estimated time and/or power (energy) consumption for associated data transfers … (¶ 0029-0030); the multi-processor computing device may select the DVFS settings for a plurality of tasks such that data transfer times are normalized for each. For example, if several data sets have to be copied to several processing units/devices and there is a global synchronization element, the synchronization element may prevent any processing units/devices from continuing until all processing units/devices have reached the element, and so the multi-processor computing device (e.g., via the runtime functionality) may calculate DVFS settings for each that provide equalized arrival times to all, minimizing waiting (and power (energy) consumption) … (¶ 0097)].
As to claim 5, Garcia in view of Ganju & Karas teaches The method of claim 1, wherein the migration time is generated by a machine learning model trained on data associated with historical migration operations, historical energy costs, and factors influencing the energy costs [Garcia -- … Embodiment methods may include generating a data transfer heuristic model based on measurements from a plurality of sample data transfers between a plurality of data storage units. The generated data transfer heuristic model may be used to calculate data transfer costs for each of a plurality of tasks. The calculated data transfer costs may be used to schedule execution of the plurality of tasks in an execution order on selected ones of the plurality of processing units. The data transfer heuristic model may be updated based on measurements of data transfers occurring during the executions of the plurality of tasks (e.g., time, power consumption, etc.) … (abstract); In block 302, the multi-processor computing device may generate a data transfer heuristic model based on measurements from a plurality of sample transfers between a plurality of data storage units. The multi-processor computing device may generate a data transfer heuristic model that may be used to predict or otherwise gauge the time and/or power (energy) consumption costs for transferring certain sizes of data between certain data storage units of the computing device. Such measurements may include time measurements and/or power (energy) consumption measurements and may be taken by the multi-processor computing device during a training period in which the multi-processor computing device obtains empirical data indicating latency and/or bandwidth, for various memories of the multi-processor computing device … (¶ 0054)].
As to claim 6, Garcia in view of Ganju & Karas teaches The method of claim 1, further comprising accounting for a source of energy or an estimated cost of the energy when performing the migration operation [Garcia -- In block 302, the multi-processor computing device may generate a data transfer heuristic model based on measurements from a plurality of sample transfers between a plurality of data storage units. The multi-processor computing device may generate a data transfer heuristic model that may be used to predict or otherwise gauge the time and/or power (energy) consumption costs for transferring certain sizes of data between certain data storage units of the computing device. Such measurements may include time measurements and/or power (energy) consumption measurements and may be taken by the multi-processor computing device during a training period in which the multi-processor computing device obtains empirical data indicating latency and/or bandwidth, for various memories of the multi-processor computing device … (¶ 0054)].
As to claim 7, Garcia in view of Ganju & Karas teaches The method of claim 1, wherein the migration time is associated with lower energy costs [Garcia -- In some embodiments, generating the data transfer heuristic model based on the measurements from the plurality of sample data transfers between the plurality of data storage units may include adjusting a coefficient of a formula that calculates an estimated cost. In some embodiments, the formula may calculate one of an estimated time cost, an estimated power consumption cost, or both an estimated time cost and an estimated power consumption cost … In some embodiments, calculating the data transfer costs for each of the plurality of tasks using the generated data transfer heuristic model may include querying the data transfer heuristic model using a data transfer size, a source identity, and a destination identity. In some embodiments, querying the data transfer heuristic model may be performed via an application programming interface (API) call … (¶ 0003-0005)].
As to claim 8, it recites substantially the same limitations as in claim 1, and is rejected for the same reasons set forth in the analysis of claim 1. Refer to “As to claim 1” presented earlier in this Office Action for details.
As to claim 9, it recites substantially the same limitations as in claim 2, and is rejected for the same reasons set forth in the analysis of claim 2. Refer to “As to claim 2” presented earlier in this Office Action for details.
As to claim 10, it recites substantially the same limitations as in claim 3, and is rejected for the same reasons set forth in the analysis of claim 3. Refer to “As to claim 3” presented earlier in this Office Action for details.
As to claim 11, it recites substantially the same limitations as in claim 4, and is rejected for the same reasons set forth in the analysis of claim 4. Refer to “As to claim 4” presented earlier in this Office Action for details.
As to claim 12, it recites substantially the same limitations as in claim 5, and is rejected for the same reasons set forth in the analysis of claim 5. Refer to “As to claim 5” presented earlier in this Office Action for details.
As to claim 13, it recites substantially the same limitations as in claim 6, and is rejected for the same reasons set forth in the analysis of claim 6. Refer to “As to claim 6” presented earlier in this Office Action for details.
As to claim 14, it recites substantially the same limitations as in claim 7, and is rejected for the same reasons set forth in the analysis of claim 7. Refer to “As to claim 7” presented earlier in this Office Action for details.
As to claim 15, Garcia in view of Ganju & Karas teaches The method of claim 8, further comprising requesting a second replication time to synchronize changes to the data stored in the source storage and replicating the changes to the target storage at the second replication time [Garcia -- For example, based on scheduler data indicating the dependencies of various tasks to certain buffer data, the multi-processor computing device may calculate an estimated time cost and/or estimated power (energy) consumption cost for transferring data of a buffer to the cache of a GPU … For example, based on data transfer costs of a first task and a second task to be performed on a first processing unit, the multi-processor computing device may schedule the first task to execute first due to having a lower estimated time and/or power (energy) consumption for associated data transfers … (¶ 0029-0030); … As another example, the multi-processor computing device may prioritize by creating multiple independent queues with potential synchronization between the queues (i.e., distributed scheduling). Prioritization based on estimations of data transfer costs required for performing tasks may enable the multi-processor computing device to improve efficiency of task executions with regard to data transfers and thus reduce unnecessary flushing and other drawbacks that may be present in systems lacking coherency (¶ 0030); … In various embodiments, the multi-processor computing device via a scheduler may utilize any number of implementations to prioritize the plurality of tasks based on the calculated data transfer costs, such as sorting tasks in a single queue, creating multiple independent queues that may be synchronized (i.e., distributed scheduling), creating a scheduling graph, etc. … (¶ 0065); … the multi-processor computing device may select the DVFS settings for a plurality of tasks such that data transfer times are normalized for each. For example, if several data sets have to be copied to several processing units/devices and there is a global synchronization element, the synchronization element may prevent any processing units/devices from continuing until all processing units/devices have reached the element, and so the multi-processor computing device (e.g., via the runtime functionality) may calculate DVFS settings for each that provide equalized arrival times to all, minimizing waiting (and power (energy) consumption) … (¶ 0097)].
As to claim 16, it recites substantially the same limitations as in claim 1, and is rejected for the same reasons set forth in the analysis of claim 1. Refer to “As to claim 1” presented earlier in this Office Action for details.
As to claim 17, it recites substantially the same limitations as in claim 1, and is rejected for the same reasons set forth in the analysis of claim 1. Refer to “As to claim 1” presented earlier in this Office Action for details.
As to claim 18, it recites substantially the same limitations as in claims 2-3, and is rejected for the same reasons set forth in the analysis of claims 2-3. Refer to “As to claim 2” and “As to claim 3” presented earlier in this Office Action for details.
As to claim 19, it recites substantially the same limitations as in claims 4-5, and is rejected for the same reasons set forth in the analysis of claims 4-5. Refer to “As to claim 4” and “As to claim 5” presented earlier in this Office Action for details.
As to claim 20, it recites substantially the same limitations as in claim 6, and is rejected for the same reasons set forth in the analysis of claim 6. Refer to “As to claim 6” presented earlier in this Office Action for details.
Conclusion
5. Claims 1-20 are rejected as explained above.
6. Any inquiry concerning this communication or earlier communications from the examiner should be directed to SHENG JEN TSAI whose telephone number is 571-272-4244. The examiner can normally be reached on Monday-Friday, 9-6.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kenneth Lo can be reached on 571-272-9774. 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).
/SHENG JEN TSAI/Primary Examiner, Art Unit 2136
December 28, 2025