IP Library Granted Patent US 12,405,829
Granted Patent B2
US 12,405,829 · App. 17/654,425 · Granted Sep 2, 2025

Resource utilization efficiency based job scheduling

Inventors: Xiao Dong Wang (Beijing, CN); Pei Ci Fang (Beijing, CN); Xiao Ping Zheng (Beijing, CN); Jia Bin Liao (Beijing, CN)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
G06F9/5038G06F9/4881G06F9/5077G06F11/3409G06F2209/501G06F2209/508
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,405,829
App. No.
17/654,425
Filed
Mar 11, 2022
Granted
Sep 2, 2025
Kind
B2
Art Unit
2194
USPC
718/104
Abstract

Computer-implemented methods, systems and computer program products for job scheduling in a computing system are provided. The computing resources of the computing system is allocated to one or more users of the computing system using a predefined policy. The method comprises receiving, by a job scheduler associated with the computing system one or more resource utilization scores of the one or more users, each of the one or more resource utilization scores indicating resource utilization efficiency over time at a job level for the one or more users. The method comprises receiving, by the job scheduler, one or more jobs submitted by the one or more users. The method further comprises scheduling, by the job scheduler, the received one or more jobs based on the predefined policy and further on the received one or more resource utilization scores of the one or more users.

Claims (54)

1. A computer-implemented method for job scheduling in a computing system, wherein computing resources of the computing system are allocated to one or more users of the computing system using a predefined policy, the method comprising:

receiving, by a job scheduler of the computing system, a resource utilization score of each of the one or more users, wherein

the resource utilization score of each user is calculated based on resource utilization efficiencies of successfully completed jobs of that user and respective attenuations over time,

the resource utilization score for each user indicates resource utilization efficiency over time at a job level for that user,

the resource utilization score for each user is defined as ResUtScore=Σ t−1 n A t e ResUtScore t ,

n is a number of time periods, A t is a time attenuation factor for the t th time period, and ResUtScore t is a resource utilization score for that user during the t th time period,

the t th time period occurred more recently than the (t+1) th time period, and

A t is greater than A t+1 ;

receiving, by the job scheduler, one or more jobs submitted by the one or more users; and

scheduling, by the job scheduler, the received one or more jobs based on the predefined policy and further on the received resource utilization score for each of the one or more users, wherein said scheduling comprises:

allocating the computing resources of the computing system to the one or more users based on the predefined policy and further on the received resource utilization score for each of the one or more users.

2. The computer-implemented method of claim 1 , wherein the respective resource utilization efficiencies of successfully completed jobs of the one or more users are calculated based on collected metadata for the successfully completed jobs including job run time and corresponding resource allocation information.

3. The computer-implemented method of claim 1 , further comprising:

assigning a resource utilization efficiency to a job in response to the job failing, or the job failing to run for corresponding assigned resource(s).

4. The computer-implemented method of claim 1 , wherein the scheduling of the received one or more jobs comprises:

allocating, by the job scheduler, resources for the received one or more jobs further based on the received one or more resource utilization scores of the one or more users to avoid over-allocation or starvation.

5. The computer-implemented method of claim 4 , wherein the scheduling of the received one or more jobs comprises:

adjusting, by the job scheduler, the predefined policy with the received one or more resource utilization scores.

6. A system for job scheduling in a computing system, wherein computing resources of the computing system are allocated to one or more users of the computing system using a predefined policy, the system comprising:

a computing node comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processing units of the computing node to cause the one or more processing units to:

receive a resource utilization score of each of the one or more users, wherein

the resource utilization score of each user is calculated based on resource utilization efficiencies of successfully completed jobs of that user and respective attenuations over time,

the resource utilization score for each user indicates resource utilization efficiency over time at a job level for that user,

the resource utilization score for each user is defined as ResUtScore=Σ t−1 n A t e ResUtScore t ,

n is a number of time periods, A t is a time attenuation factor for the t th time period, and ResUtScore t is a resource utilization score for that user during the t th time period,

the t th time period occurred more recently than the (t+1) th time period, and

A t is greater than A t+1 ;

receive one or more jobs submitted by the one or more users; and

schedule the received one or more jobs based on the predefined policy and further on the received resource utilization score for each of the one or more users, wherein said scheduling comprises:

allocating the computing resources of the computing system to the one or more users based on the predefined policy and further on the received resource utilization score for each of the one or more users.

7. The system of claim 6 , wherein the respective resource utilization efficiencies of successfully completed jobs of the one or more users are calculated based on collected metadata for the successfully completed jobs including job run time and corresponding resource allocation information.

8. The system of claim 6 , further comprising:

assigning a resource utilization efficiency to a job in response to the job failing, or the job failing to run for corresponding assigned resource(s).

9. The system of claim 6 , wherein the scheduling of the received one or more jobs comprises:

allocating resources for the received one or more jobs further based on the received one or more resource utilization scores of the one or more users to avoid over-allocation or starvation.

10. The system of claim 9 , wherein the scheduling of the received one or more jobs comprises:

adjusting the predefined policy with the received one or more resource utilization scores.

11. A computer program product for job scheduling in a computing system, wherein computing resources of the computing system are allocated to one or more users of the computing system using a predefined policy, the computer program product comprising a non-transitory computer readable storage having program instructions embodied therewith and the program instructions comprising:

program codes configured to:

receive, by a job scheduler of the computing system, a resource utilization score of each of the one or more users, wherein

the resource utilization score of each user is calculated based on resource utilization efficiencies of successfully completed jobs of that user and respective attenuations over time,

the resource utilization score for each user indicates resource utilization efficiency over time at a job level for that user,

the resource utilization score for each user is defined as ResUtScore=Σ t−1 n A t e ResUtScore t ,

n is a number of time periods, A t is a time attenuation factor for the t th time period, and ResUtScore t is a resource utilization score for that user during the t th time period,

the t th time period occurred more recently than the (t+1) th time period, and

A t is greater than A t+1 ;

receive, by the job scheduler, one or more jobs submitted by the one or more users; and

schedule, by the job scheduler, the received one or more jobs based on the predefined policy and further on the received resource utilization score for each of the one or more users, wherein said scheduling comprises:

allocating the computing resources of the computing system to the one or more users based on the predefined policy and further on the received resource utilization score for each of the one or more users.

12. The computer program product of claim 11 , wherein the respective resource utilization efficiencies of successfully completed jobs of the one or more users are calculated based on collected metadata for the successfully completed jobs including job run time and corresponding resource allocation information.

13. The computer program product of claim 11 , further comprising:

assigning a resource utilization efficiency to a job in response to the job failing, or the job failing to run for corresponding assigned resource(s).

14. The computer program product of claim 11 , wherein the program instructions comprising:

program codes configured to allocate resources for the received one or more jobs further based on the received one or more resource utilization scores of the one or more users to avoid over-allocation or starvation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2022
From: WANG, XIAO DONG; FANG, PEI CI; ZHENG, XIAO PING; LIAO, JIA BIN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 059235/0412 →
Continuity (1)
Related Publication 20230289231A1 · Sep 14, 2023
References Cited (23)
US 8087026B2 · Zhong · 2011 [cited by applicant]
US 8332863B2 · Zhong · 2012 [cited by examiner]
US 9430288B2 · Wilson et al. · 2016 [cited by applicant]
US 10938674B1 · Natanzon · 2021 [cited by applicant]
US 20070143765A1 · Aridor et al. · 2007 [cited by applicant]
US 20150199218A1 · Wilson · 2015 [cited by examiner]
US 20190317849A1 · Cmielowski · 2019 [cited by examiner]
US 20200133726A1 · Curino · 2020 [cited by applicant]
US 20200151025A1 · Kinney, Jr. · 2020 [cited by examiner]
US 20200326979A1 · Seshiah · 2020 [cited by applicant]
US 20200326982A1 · Jha · 2020 [cited by applicant]
US 20210019179A1 · Yadav · 2021 [cited by applicant]
CN 109408229A · 2019 [cited by applicant]
CN 111813564A · 2020 [cited by applicant]
CN 112930524A · 2021 [cited by applicant]
WO 2023169329A1 · 2023 [cited by applicant]
International Search Report and Written Opinion dated May 24, 2023, for International Application No. PCT/CN2023/079574, filed Mar. 3, 2023, total pp. 7. [cited by applicant]
Anonymous, “Method for dynamically setting batch job memory resource requirements based on historical usage and user suggestion,” https://priorart.ip.com/IPCOM/000179647, an IP.com Prior Art Database Technical Disclosur… [cited by applicant]
Anonymous, “System and Method to Score User on Usage of Heterogenous Resources,” https://priorart.ip.com/IPCOM/000263334, an IP.com Prior Art Database Technical Disclosure, IP.com No. IPCOM000263334D, Aug. 19, 2020, 6 p… [cited by applicant]
Dharani et al., “Efficient Resource Allocation and Scheduling in Cloud Computing Environment,” International Journal of Research in Computer Applications and Robotics, ISSN 2320-7345, vol. 4, Issue 3, pp. 48-55, Mar. 20… [cited by applicant]
Gawali et al., “Task scheduling and resource allocation in cloud computing using a heuristic approach,” Journal of Cloud Computing: Advances, Systems and Applications (2018) 7:4, https://journalofcloudcomputing.springer… [cited by applicant]
Jain et al., “An Efficient Resource Utilization Based Integrated Task Scheduling Algorithm,” 2017 4th International Conference on Signal Processing and Integrated Networks (SPIN), https://ieeexplore.ieee.org/document/80… [cited by applicant]
Mell, et al., “The NIST Definition of Cloud Computing,” Recommendations of the National Institute of Standards and Technology, U.S. Department of Commerce, Special Publication 800-145, Sep. 2011, 7 pgs. [cited by applicant]