IP Library Granted Patent US 12,585,494
Granted Patent B2
US 12,585,494 · App. 17/722,007 · Granted Mar 24, 2026

Method and system for performing domain level scheduling of an application in a distributed multi-tiered computing environment using heuristic scheduling

Inventors: William Jeffery White (Plano, TX); Said Tabet (Austin, TX)
Assignee: Dell Products L.P.
G06F9/4881G06F9/5038
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,585,494
App. No.
17/722,007
Granted
Mar 24, 2026
Kind
B2
Abstract

Techniques described herein relate to a method for managing a distributed multi-tiered computing (DMC) environment. The method includes normalizing, by a local controller associated with an DMC domain, task resource demand dimensions for each task associated with a scheduling job; summing the resource demand dimension for each task to generate resource demand vectors; classifying tasks based on priority; sorting tasks based on associated resource demand vectors; obtaining critical path, earliest start time, and latest start time associated with each task; sorting tasks based on critical path and earliest start time; and generating scheduling assignments based on the priority, capacity of devices in a final candidate list, resource demand vectors, earliest start time, and the critical path.

Claims (65)

1 . A method for performing domain level scheduling in a distributed multi- tiered computing (DMC) environment, comprising:

receiving, by a local controller, a scheduling package from a global controller, wherein:

the scheduling package specifies a scheduling job, and

the global controller sent the scheduling package as network data traffic units over a series of network devices that operatively connect the local controller and the global controller;

normalizing, by the local controller associated with a DMC domain, task resource demand dimensions for each task associated with the scheduling job, wherein the resource demand dimensions comprise:

compute units, wherein the compute units comprise a quantity of processors and processor cores;

memory units;

accelerator units, wherein the accelerator units comprise a quantity of graphics processing units (GPUs), a quantity of GPU memory, a quantity of field programmable gate arrays (FPGAs), and a quantity of FPGA logic elements; and

network units, wherein the network units comprise a quantity of network interface cards and a total network bandwidth;

summing the task resource demand dimensions for each task to generate resource demand vectors;

classifying tasks based on priority;

sorting tasks based on associated resource demand vectors;

obtaining critical path, earliest start time, and latest start time associated with each task;

sorting tasks based on the critical path and the earliest start time; and

generating scheduling assignments based on the priority, capacity of devices in a final candidate list, resource demand vectors, earliest start time, and the critical path.

2 . The method of claim 1 , wherein the tasks, the priority, and the task resource demand dimensions are specified by a scheduling package associated with the scheduling job.

3 . The method of claim 1 , wherein the earliest start times specify the earliest relative time the tasks may be scheduled.

4 . The method of claim 1 , wherein the latest start times specify the latest relative times the tasks may be scheduled.

5 . The method of claim 1 , wherein the critical path specifies a portion of the tasks to schedule on a same device.

6 . The method of claim 1 , wherein the DMC domain comprises one selected from a group consisting of:

an edge domain;

a core domain; and

a cloud domain.

7 . The method of claim 6 , wherein:

the edge domain comprises an edge domain device set;

the core domain comprises a core domain device set; and

the cloud domain comprises a cloud domain device set.

8 . A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for managing a distributed multi-tiered computing (DMC) environment, comprising:

receiving, by a local controller, a scheduling package from a global controller, wherein:

the scheduling package specifies a scheduling job, and

the global controller sent the scheduling package as network data traffic units over a series of network devices that operatively connect the local controller and the global controller;

normalizing, by the local controller associated with a DMC domain, task resource demand dimensions for each task associated with the scheduling job, wherein the resource demand dimensions comprise:

compute units, wherein the compute units comprise a quantity of processors and processor cores;

memory units;

accelerator units, wherein the accelerator units comprise a quantity of graphics processing units (GPUs), a quantity of GPU memory, a quantity of field programmable gate arrays (FPGAs), and a quantity of FPGA logic elements; and

network units, wherein the network units comprise a quantity of network interface cards and a total network bandwidth;

summing the task resource demand dimensions for each task to generate resource demand vectors;

classifying tasks based on priority;

sorting tasks based on associated resource demand vectors;

obtaining critical path, earliest start time, and latest start time associated with each task;

sorting tasks based on the critical path and the earliest start time; and

generating scheduling assignments based on the priority, capacity of devices in a final candidate list, resource demand vectors, earliest start time, and the critical path.

9 . The non-transitory computer readable medium of claim 8 , wherein the tasks, the priority, and the task resource demand dimensions are specified by a scheduling package associated with the scheduling job.

10 . The non-transitory computer readable medium of claim 8 , wherein the earliest start times specify the earliest relative time the tasks may be scheduled.

11 . The non-transitory computer readable medium of claim 8 , wherein the latest start times specify the latest relative times the tasks may be scheduled.

12 . A system for managing a distributed multi-tiered computing (DMC) environment, the system comprising:

a DMC environment; and

a local controller associated with a DMC domain of the DMC environment, comprising a processor and memory, and configured to:

receive, by the local controller, a scheduling package from a global controller,

wherein:

the scheduling package specifies a scheduling job, and

the global controller sent the scheduling package as network data traffic units over a series of network devices that operatively connect the local controller and the global controller;

normalize task resource demand dimensions for each task associated with a scheduling job, wherein the resource demand dimensions comprise:

compute units, wherein the compute units comprise a quantity of processors and processor cores;

memory units;

accelerator units, wherein the accelerator units comprise a quantity of graphics processing units (GPUs), a quantity of GPU memory, a quantity of field programmable gate arrays (FPGAs), and a quantity of FPGA logic elements; and

network units, wherein the network units comprise a quantity of network interface cards and a total network bandwidth;

sum the task resource demand dimensions for each task to generate resource demand vectors;

classify tasks based on priority;

sort tasks based on associated resource demand vectors;

obtain critical path, earliest start time, and latest start time associated with each task;

sort tasks based on the critical path and the earliest start time; and

generate scheduling assignments based on the priority, capacity of devices in a final candidate list, resource demand vectors, earliest start time, and the critical path.

13 . The system of claim 12 , wherein the tasks, the priority, and the task resource demand dimensions are specified by a scheduling package associated with the scheduling job.

14 . The system of claim 12 , wherein the earliest start times specify the earliest relative time the tasks may be scheduled.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2022
From: WHITE, WILLIAM JEFFERY; TABET, SAID
To: DELL PRODUCTS L.P.
Reel/Frame 059700/0963 →
Continuity (1)
Related Publication 20230333883A1 · Oct 19, 2023
References Cited (61)
US 5408663A · Miller · 1995 [cited by examiner]
US 8056079B1 · Martin · 2011 [cited by applicant]
US 9459859B2 · Borden et al. · 2016 [cited by applicant]
US 10120669B2 · Karagiannis · 2018 [cited by examiner]
US 11089092B1 · Seibel · 2021 [cited by applicant]
US 11184269B1 · Nee et al. · 2021 [cited by applicant]
US 20020016729A1 · Breitenbach · 2002 [cited by applicant]
US 20070283351A1 · Degenaro · 2007 [cited by applicant]
US 20090300637A1 · Ringseth et al. · 2009 [cited by applicant]
US 20120066759A1 · Chen · 2012 [cited by applicant]
US 20120179824A1 · Jackson · 2012 [cited by applicant]
US 20120284408A1 · Dutta · 2012 [cited by applicant]
US 20130167152A1 · Jeong · 2013 [cited by applicant]
US 20140343999A1 · Kim · 2014 [cited by examiner]
US 20160011912A1 · Rangaraju · 2016 [cited by applicant]
US 20160085587A1 · Dube · 2016 [cited by applicant]
US 20160212007A1 · Alatorre · 2016 [cited by applicant]
US 20170257257A1 · Dawes · 2017 [cited by applicant]
US 20170339070A1 · Chang · 2017 [cited by applicant]
US 20180159745A1 · Byers · 2018 [cited by applicant]
US 20180287902A1 · Chitalia · 2018 [cited by applicant]
US 20190324828A1 · Young · 2019 [cited by applicant]
US 20200021537A1 · Oliveira · 2020 [cited by applicant]
US 20200159573A1 · Dobrev · 2020 [cited by applicant]
US 20200192714A1 · Clow · 2020 [cited by applicant]
US 20200351337A1 · Calmon · 2020 [cited by applicant]
US 20200401452A1 · Piercey · 2020 [cited by applicant]
US 20210064492A1 · Myers · 2021 [cited by applicant]
US 20210294661A1 · Turner · 2021 [cited by applicant]
US 20210360058A1 · Tai · 2021 [cited by examiner]
US 20220043677A1 · Liret · 2022 [cited by examiner]
US 20220094690A1 · Tarkhanyan · 2022 [cited by applicant]
US 20220114033A1 · Arvinte · 2022 [cited by applicant]
US 20220116456A1 · Higuchi · 2022 [cited by applicant]
US 20220291952A1 · Milojicic · 2022 [cited by applicant]
US 20220318052A1 · Sivathanu · 2022 [cited by applicant]
US 20230037293A1 · Hu et al. · 2023 [cited by applicant]
US 20230096811A1 · Meghani · 2023 [cited by applicant]
US 20230168875A1 · Carter · 2023 [cited by applicant]
Abdulaziz Alhubaishy et al., The Best-Worst Method for Resource Allocation and Task Scheduling in Cloud Computing, Year: 2020 (6 pages). [cited by applicant]
Aref Abdullah et al., A reliable, TOPSIS-based multi-criteria, and hierarchical load balancing method for computational grid, Year: 2019 (22 pages). [cited by applicant]
Dang Minh Quan et al., On Architecture for SLA-aware Workflows in Grid Environments, Journal of Interconnection Networks, Year: 2005 (19 pages). [cited by applicant]
Dheeraj Rane et al, Cloud Brokering Architecture for Dynamic Placement of Virtual Machines, IEEE 8th International Conference on Cloud Computing, 2015 (8 pages). [cited by applicant]
Ivan Roderoa et al., Grid broker selection strategies using aggregated resource information, Year: 2009 (15 pages). [cited by applicant]
S. M. Jaybhaye et al., Heterogeneous Resource Provisioning for Workflow-Based Applications Using AHP in Cloud Computing, Chapter 41, Year : 2021 (15 pages). [cited by applicant]
Seyed Hossein Mortazavi Etc, Cloud Path: A Multi-Tier Cloud Computing Framework, 2017 (13 pages). [cited by applicant]
Tong, Z., Deng, X., Chen, H. et al. QL-HEFT: a novel machine learning scheduling scheme base on cloud computing environment. Neural Comput & Applic 32, 5553-5570 (2020). https://doi.org/10.1007/s00521-019-04118-8. [cited by applicant]
Alexandru Iulian Orhean [cited by applicant]
Basel Magableh, School of Computer Science, Dublin Institute of Technology, Technological University Dublin, Ireland. A Deep Recurrent Q Network towards Self-adapting Distributed Microservices architecture. arXiv:1901.0… [cited by applicant]
Debeer and Strobl BMC Bioinformatics. Conditional Permutation Importance Revisited. (2020) 21:307 https://doi.org/10.1186/s12859-020-03622-2. [cited by applicant]
Haoran Qiu, Subho S. Banerjee, Saurabh Jha, Zbigniew T. Kalbarczyk, and Ravishankar K. Iyer, University of Illinois at Urbana-Champaign. FIRM: An Intelligent Fine-grained Resource Management Framework for SLO-Oriented M… [cited by applicant]
Huang, Huang, Chen, Wang, IEEE: Simulated Annealing for Sequential Pattern Detection and Seismic Applications, Dec. 2014 doi.org/10.1109/JSTARS.2014.2344756. [cited by applicant]
Lin, Li, Liao, Franke, Capacity Optimization for Resource Pooling in Virtualized Data Centers with Composable Systems, DOI 10.1109/TPDS.2017.2757479 (2017). [cited by applicant]
Muhammad Tirmazi, Adam Barker, Nan Deng, Md E. Haque, Zhi-jing Gene Qin, Steven Hand, MorHarchol-Balter, and John Wilkes. 2020. Borg: the Next Generation. In Fifteenth European Conference on Computer Systems (EuroSys '2… [cited by applicant]
Oren Ben-Kiki et al. “YAML Aint Markup Language (YAML) version 1.2”; Revision 1.2.2 (Oct. 1, 2021); <https://yaml.org> 66 pages. [cited by applicant]
Stoica, INRA-Biometrie, Gregori, University Jaume I, Mateu, University Jaume I: Simulated Annealing and Object Point Processes: Tools for Analysis of Spatial Patterns, Jul. 2005. [cited by applicant]
Yihui Feng, Alibaba Group; Zhi Liu, Yunjian Zhao, Tatiana Jin, and Yidi Wu, The Chinese University of Hong Kong; Yang Zhang, Alibaba Group; James Cheng, The Chinese University of Hong Kong; Chao Li and Tao Guan, Alibaba… [cited by applicant]
Attila Kertesz et al., GM BS: A new middleware service for making grids interoperable, 1-12, 2009 (12 pages). [cited by applicant]
Benay Kumar Ray et al., OCPDA: A novel approach towards detection of overloaded cloud providers in a federated environment, 1-6, 2018 (6 pages). [cited by applicant]
Stylianos Zikos et al., The Impact of Service Demand Variability on Resource Allocation Strategies in a Grid System, 1-29, 2010 (29 pages). [cited by applicant]
Ines Thabet, Chihab Hanachi, and Khaled Ghedira, Towards an Adaptive Grid Scheduling: Architecture and Protocols Specification, Towards an Adaptive Grid Scheduling: Architecture and Protocols Specification, unknown, pp.… [cited by applicant]