US 12,353,914 B2
System for predicting memory resources and scheduling jobs in service-oriented architectures
Durga Prasad Kutthumolu, Hyderabad (IN); Sachin S. Nagvekar, Mumbai (IN); and Venkata Karthik Ryali, Hyderabad (IN)
Assigned to Bank of America Corporation, Charlotte, NC (US)
Filed by BANK OF AMERICA CORPORATION, Charlotte, NC (US)
Filed on Mar. 3, 2022, as Appl. No. 17/686,162.
Prior Publication US 2023/0281043 A1, Sep. 7, 2023
Int. Cl. G06F 9/50 (2006.01); G06F 11/30 (2006.01); G06N 20/00 (2019.01)
CPC G06F 9/5016 (2013.01) [G06F 9/5022 (2013.01); G06F 11/3037 (2013.01); G06N 20/00 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
a database configured to store a data log, wherein the data log comprises a plurality of previously performed jobs, each previously performed job comprises job information identifying a timestamp, a job name, and an amount of memory used;
a processor communicatively coupled to the database and configured to:
receive a plurality of job requests, each job request comprising an associated job name and associated job parameters;
for a first received job request, perform a first comparison of the associated job name and associated job parameters with the job information of each previously performed job;
for the first received job request, determine a first amount of memory to perform the first received job request based on the first comparison;
for a second received job request, perform a second comparison of the associated job name and associated job parameters with the job information of each previously performed job;
for the second received job request, determine a second amount of memory to perform the second received job request based on the second comparison;
for a third received job request, perform a third comparison of the job name and job parameters with the job information of each previously performed job;
for the third received job request, determine a third amount of memory to perform the third received job request based on the third comparison;
determine whether the first amount of memory exceeds a first predetermined memory size associated with the first received job request;
in response to determining the first amount of memory exceeds the first predetermined memory size associated with the first received job request, cause deallocation of a fourth amount of temporary memory associated with the first service provider network, wherein the fourth amount of temporary memory is sufficient to perform the first received job request;
transmit the first received job request to the first service provider network for execution using the deallocated fourth amount of temporary memory;
determine whether the second amount of memory exceeds a second predetermined memory size associated with the second received job request and whether the third amount of memory exceeds a third predetermined memory size associated with the third received job request; and
in response to determining that the second amount of memory does not exceed a second predetermined memory size associated with the second received job request and that the third amount of memory does not exceed a third predetermined memory size associated with the third received job request, create a prioritized queue comprising the second received job request, and the third received job request based at least in part upon the second amount of memory, and the third amount of memory.