Directed Acyclic Graph Topology Generators: A Survey

  • Abstract
  • Literature Map
  • Similar Papers
Abstract
Translate article icon Translate Article Star icon
Take notes icon Take Notes

Directed Acyclic Graphs (DAGs) are essential for modelling task dependencies across various domains, including industrial automation, autonomous systems, and many-core processors. DAG generators are widely used to evaluate the performance of scheduling algorithms. This survey systematically analyzes existing DAG generation algorithms, evaluating their search space, efficiency, and uniformity. We categorize existing DAG generators into three primary methodologies: Triangular Matrix-Based (TMB), Layer-by-Layer (LBL), and Poset-Based (POB) methods. Furthermore, we introduce a dedicated testing tool that quantitatively assesses various DAG generators’ performance. Experimental results show each DAG generator’s strengths and limitations, offering insights into their applicability in real-world scheduling and resource allocation problems. These findings provide a foundation for selecting suitable DAG generation methods for benchmarking scheduling heuristics and improving DAG task modelling.

Similar Papers
  • Research Article
  • Cite Count Icon 4
  • 10.1007/bf02936356
A greedy algorithm for scheduling tasks on production lines
  • Sep 1, 2001
  • Operational Research
  • S Katsavounis

Production scheduling activities allocates tasks to achieve efficient or optimal utilization of the system configuration. Due to the large combinatorial complexity of most real-world scheduling and resource allocation problems, true optimization is very difficult, requiring the consideration of numerous constraints and objectives. Heuristic solution methods are concerned to minimize the total project duration, without violate the priority constraints. The greedy algorithm presented in this paper uses a systematic partition of the tasks to be executed, scheduling tasks and communication loads to the production lines. The algorithm is suitable on solving problems with arbitrary execution and transmission times and is applicable on systems with arbitrary topologies of the communication network, scheduling hundreds of tasks on a limited number of production lines.The paper uses terms of graph theory to modelize the scheduling problem and is completed with a numerical example of a small task graph. The effectiveness of the proposed algorithm is demonstrated through a comparison between scheduling results obtained with the proposed method and those obtained with sequential and random methods.

  • Conference Article
  • Cite Count Icon 3
  • 10.1109/cec.2003.1299904
Developing GA-based hybrid approaches for a real-world mixed-integer scheduling problem
  • Dec 8, 2003
  • K.P Dahal + 2 more

Many real-world scheduling problems are suited to a mixed-integer formulation. The solution of these problems involves the determination of the scheduling period. The solution procedure requires simultaneous consideration of these two types of variables. In recent years researchers have focused much attention on developing new hybrid approaches using modern heuristic and traditional exact methods. This paper proposes the development of a variety of hybrid approaches that combines heuristics and mathematical programming within a genetic algorithm (GA) framework for a real-world mixed integer scheduling problem, namely the generation levels for each generator in a power system for each scheduling interval. This paper investigates how the optimum or near optimum solution for the GS problem promising and show that the hybrid approach offers an effective alternative for solving the GS problem within a realistic timeframe.

  • Research Article
  • 10.1142/s2196888819500027
A Constraint-Based Declarative Programming Framework for Scheduling and Resource Allocation Problems
  • Feb 1, 2019
  • Vietnam Journal of Computer Science
  • Jarosław Wikarek + 1 more

Scheduling and resource allocation problems are widespread in many areas of today’s technology and management. Their different forms and structures appear in production, logistics, software engineering, computer networks, project and human resources management, services, etc. The literature (problem classification, scheduling and resource allocation models, solutions) is vast and exhaustive. In practice, however, classical scheduling problems with fixed structures and standard constraints (precedence, disjoint, etc.) are rare. Practical scheduling problems include also logical and nonlinear constraints, and they use nonstandard criteria of schedule evaluations. Indeed, in many cases, decision makers are interested in the feasibility and/or optimality of a given schedule for specified conditions formulated as general and/or specific questions. Thus, there is a need to develop a programming framework that will facilitate the modeling and solving of a variety of diverse scheduling problems. The framework should be able to (a) model any types of constraints, (b) ask questions/criteria relating to the schedule execution mode and (c) be highly effective in finding solutions (schedule development). This paper proposes such a constraint-based declarative programming framework for modeling and solving scheduling problems which satisfies the assumptions above. It was built with the Constraint Logic Programming (CLP) environment and supported with Mathematical Programming (MP). The functionality and effectiveness of this framework are presented with the use of an illustrative example for the resource-constrained scheduling problem with additional resources.

  • Conference Article
  • Cite Count Icon 4
  • 10.1109/ieem.2007.4419156
A scheduling-specific modeling approach for real world scheduling
  • Dec 1, 2007
  • J Grobler + 1 more

This paper investigates the complexities associated with real-world production scheduling scenarios. A scheduling- specific modeling approach is provided, which encourages the incorporation of management input, a scheduling classification system and the context in which the scheduling solution will be deployed, into the development of production scheduling algorithms. A differential evolution-based scheduling algorithm was developed to facilitate the completion of the first iteration of the process as applied to a real-world scheduling problem. Apart from the significance of the paper in developing a scheduling- specific approach geared towards reducing the development time of production scheduling algorithms, the benefit of an improved production schedule can be generalized to include cost reduction, customer satisfaction, improved profitability and overall competitive advantage.

  • Research Article
  • Cite Count Icon 4
  • 10.4028/www.scientific.net/amm.198-199.1506
The Study on Cloud Computing Resource Allocation Method
  • Sep 1, 2012
  • Applied Mechanics and Materials
  • Ling Yan Wang + 1 more

Resource allocation and scheduling problems in the field of cloud computing can be classified into two major groups. The first one is in the area of MapReduce task scheduling. The default scheduler is the FIFO one. Two other schedulers that are available as plug-in for Hadoop: Fair scheduler and Capacity scheduler. We presented recent research in this area to enhance performance or to better suit a specific application. MapReduce scheduling research involves introducing alternative schedulers, or proposing enhancements for existing schedulers such as streaming and input format specification. The second problem is the provisioning of virtual machines and processes to the physical machines and its different resources. We presented the major cloud hypervisors available today. We described the different methods used to solve the resource allocation problem including optimization, simulation, distributed multi-agent systems and SoA. Finally, we presented the related topic of connecting clouds which uses similar resource provisioning methods. The above two scheduling problems are often mixed up, yet they are related. For example, MapReduce benchmarks can be used to evaluate VM provisioning methods. Enhancing the solution to one problem can affect the other. Similar methods can be used in solving both problems, such as optimization methods. Cloud computing is a platform that hosts applications and services for businesses and users to accesses computing as a service. In this paper, we identify two scheduling and resource allocation problems in cloud computing.

  • Research Article
  • Cite Count Icon 119
  • 10.1016/j.advengsoft.2016.06.004
An effective multi-objective discrete grey wolf optimizer for a real-world scheduling problem in welding production
  • Jun 15, 2016
  • Advances in Engineering Software
  • Chao Lu + 3 more

An effective multi-objective discrete grey wolf optimizer for a real-world scheduling problem in welding production

  • Conference Article
  • Cite Count Icon 12
  • 10.1109/ds-rt47707.2019.8958696
Multi-rate DAG Scheduling Considering Communication Contention for NoC-based Embedded Many-core Processor
  • Oct 1, 2019
  • Shingo Igarashi + 4 more

Computing platforms for embedded systems are increasingly being transformed into multi/many-core platforms because embedded systems have become extensive, complex, and automated. In the case of an autonomous driving system, various applications are simultaneously running, and low power consumption and large-scale calculation are required. Many-core processors with a multiple instruction, multiple data (MIMD) architecture can meet these requirements. This paper proposes a scheduling algorithm for an automotive driving system expressed in a directed acyclic graph (DAG) and we use Kalray MPPA-256 as the target many-core processor. On the basis of the architecture of Kalray MPPA-256, task processing that requires large-scale calculation and intercore communication is performed while avoiding communication contention by using a proposed grouping computational resource. In addition, we propose a scheduling method for a multi-rate DAG which is a DAG with multiple periods. This method generates a DAG task in a hyperperiod and schedules the DAG with dependency on tasks that have been released closely. The formulas for prioritization and processor selection are proposed for various generated tasks in a hyperperiod. Evaluation results show that the proposed algorithm is superior to existing DAG scheduling algorithms with regard to schedulability and deadline miss ratio.

  • Research Article
  • Cite Count Icon 19
  • 10.1109/69.317700
RAPS: a rule-based language for specifying resource allocation and time-tabling problems
  • Jan 1, 1994
  • IEEE Transactions on Knowledge and Data Engineering
  • G Solotorevsky + 2 more

A general language for specifying resource allocation and time-tabling problems is presented. The language is based on an expert system paradigm that was developed previously by the authors and that enables the solution of resource allocation problems by using experts' knowledge and heuristics. The language enables the specification of a problem in terms of resources, activities, allocation rules, and constraints, and thus provides a convenient knowledge acquisition tool. The language syntax is powerful and allows the specification of rules and constraints that are very difficult to formulate with traditional approaches, and it also supports the specification of various control and backtracking strategies. We constructed a generalized inference engine that runs compiled resource allocation problem specification language (RAPS) programs and provides all necessary control structures. This engine acts as an expert system shell and is called expert system for resource allocation (ESRA). The performance of RAPS combined with ESRA is demonstrated by analyzing its solution of a typical resource allocation problem. >

  • Conference Article
  • Cite Count Icon 4
  • 10.1109/iccsse.1991.151169
Specifying resource allocation and time-tabling problems using a rule-based language
  • May 28, 1991
  • G Solotorevsky + 2 more

A general language called the resource allocation problem specification (RAPS) language, for specifying resource allocation and timetabling problems is presented. The language is based on the expert-system paradigm which enables the solution of resource allocation problems by using experts' knowledge and heuristics. The language enables the specification of a problem in terms of resources, activities, allocation rules and constraints. The language syntax is powerful and allows the specification of rules and constraints which are very difficult to formulate with the more traditional approaches. The language is independent of the inference engine that performs the allocation and can therefore be used to evaluate different allocation strategies. RAPS and the expert system for resource allocation (ESRA) shell were used to solve several resource allocation problems, which include staff allocation for air force missions and class scheduling in a university. >

  • Conference Article
  • Cite Count Icon 4
  • 10.1109/vtc2022-spring54318.2022.9860959
Dependency-aware Task Scheduling and Cache Placement in Vehicular Networks
  • Jun 1, 2022
  • Lintao Zhang + 4 more

Mobile Edge Computing (MEC) enables vehicles to flexibly obtain computing, content storage and other services by deploying at the network edge, which is of great research significance. The application tasks in vehicular networks can be distributed to MEC or task vehicle for collaborative processing. Aiming at the situation that the task dependency graph with multiple corresponding relationships is represented by Directed Acyclic Graph (DAG), this paper considers caching the program data of the corresponding node, and explores the problem of task scheduling and resource allocation in the cache enhancement scenario. Firstly, the task scheduling and cache placement decision are modeled as the optimization problem of minimizing the completion time. Then, through the analysis of the optimization problem, the problem is divided into two sub problems: task scheduling and cache decision. For the two sub problems, the task scheduling algorithm based on the latest start time and the cache decision algorithm based on dynamic programming are designed respectively. Simulation results show that the proposed algorithms and scheme can significantly reduce the completion time and task failure rate compared with the benchmark scheme.

  • Research Article
  • 10.5075/epfl-thesis-6777
Energy-Efficient Co-Design Optimization of Many-Core Platforms for Big-Data Streaming Applications
  • Jan 1, 2015
  • Karim Kanoun

Big-Data streaming applications are used in several domains such as social media analysis, financial analysis, video annotation, surveillance, medical services and traffic prediction. These applications, running on different types of platforms from mobile devices to servers, are characterized by a highly-variable stochastic input data stream, stringent delay constraints and complex task graphs. Several software and hardware optimization techniques have been proposed to maximize the execution quality and the throughput of these applications and to minimize their energy consumption on many-core platforms. By analyzing the existing techniques, one can observe that most solutions classify as a hardware-based task-specific optimization, or as an operating system scheduler optimization, or yet as a load shedding mechanism at the application level. Each of these categories is limited in scope and can be blind to the nature of the program, the data being processed or the characteristics of the hardware. Big-Data streaming applications, due to their wide range of host hardware and content and dynamically-changing input streams, expose the fragmentation of the optimization techniques and create a clear need for a better approach. In this thesis, I propose a suite of energy-efficient hardware-software co-design techniques to bridge the gap between modern Big-Data streaming applications and existing many-core platforms. I choose to model the task graph of the class of applications I consider here by a direct acyclic graph (DAG). First, at the application layer, I propose a unified DAG monitoring solution to process online the general DAG model of the application and provide a set of relevant information that is leveraged at run time by a connected scheduler. At the operating system layer, I propose three different online scheduling solutions for many-core platforms which leverage the feedback from both the application and the hardware layers. The first scheduler addresses the problem of minimizing the energy consumption and the deadlines miss rates of multimedia applications. It takes advantage of the output of the DAG monitoring solution to adapt the mapping of the tasks of multimedia applications to the hardware according to the detected performance and targeted quality of service. The second and third schedulers address the problem of maximizing the quality and throughput and minimizing the energy consumption of Big-Data stream mining applications with single and multiple streams originating from different sources. To cope with the dynamically-changing Big-Data characteristics, the schedulers integrate machine-learning techniques to learn the environment dynamics and the application requirements and adapt the scheduling policy to the desired quality of service. I show that the proposed schedulers are able to scale the execution of data-mining applications to the system capability even in the presence of concept drift. Last, at the hardware layer, to address existing system architectures limitations and to increase even more the throughput, I propose a novel low-power many-core architecture for modern Big-Data stream mining applications that integrates a novel flexible memory hierarchy able to adapt to the dynamic data-driven nature of the input data stream.

  • Research Article
  • Cite Count Icon 66
  • 10.1016/j.ejor.2005.10.012
Multi-objectives Tabu Search based algorithm for progressive resource allocation
  • Mar 1, 2007
  • European Journal of Operational Research
  • Lamia Belfares + 3 more

Multi-objectives Tabu Search based algorithm for progressive resource allocation

  • Conference Article
  • Cite Count Icon 1
  • 10.1109/mmsp.2016.7813406
Joint optimization of resource allocation and workload scheduling for cloud based multimedia services
  • Sep 1, 2016
  • Xiaoming Nan + 2 more

With the development of cloud technology, cloud computing has been increasingly used as distributed platforms for multimedia services. However there are two fundamental challenges for service providers: one is resource allocation, and the other is workload scheduling. Due to the rapidly varying workload and strict response time requirement, it is difficult to optimally allocate virtual machines (VMs) and assign workload. In this paper, we study the resource allocation and workload scheduling problem for cloud based multimedia services. Specifically, we introduce a queuing model to quantify the resource demands and service performance, and a directed acyclic graph (DAG) model to characterize the precedence constraints among jobs. Based on the proposed models, we jointly optimize the allocated VMs and the assigned workload to minimize the total resource cost under the response time constraints. Since the formulated problem is mixed integer non-linear programming, a heuristic is proposed to efficiently allocate resources for practical services. Experimental results show that the proposed scheme can effectively allocate VMs and schedule workload to achieve the minimal resource cost.

  • Book Chapter
  • Cite Count Icon 7
  • 10.1007/978-3-642-16505-4_9
Hierarchical Scheduling of DAG Structured Computations on Manycore Processors with Dynamic Thread Grouping
  • Jan 1, 2010
  • Yinglong Xia + 2 more

Many computational solutions can be expressed as directed acyclic graphs (DAGs) with weighted nodes. In parallel computing, scheduling such DAGs onto manycore processors remains a fundamental challenge, since synchronization across dozens of threads and preserving precedence constraints can dramatically degrade the performance. In order to improve scheduling performance on manycore processors, we propose a hierarchical scheduling method with dynamic thread grouping, which schedules DAG structured computations at three different levels. At the top level, a supermanager separates threads into groups, each consisting of a manager thread and several worker threads. The supermanager dynamically merges and partitions the groups to adapt the scheduler to the input task dependency graphs. Through group merging and partitioning, the proposed scheduler can dynamically adjust to become a centralized scheduler, a distributed scheduler or somewhere in between, depending on the input graph. At the group level, managers collaboratively schedule tasks for their workers. At the within-group level, workers perform self-scheduling within their respective groups and execute tasks. We evaluate the proposed scheduler on the Sun UltraSPARC T2 (Niagara 2) platform that supports up to 64 hardware threads. With respect to various input task dependency graphs, the proposed scheduler exhibits superior performance when compared with other various baseline methods, including typical centralized and distributed schedulers.

  • Book Chapter
  • 10.1007/978-3-319-75417-8_40
A Constraint-Based Framework for Scheduling Problems
  • Jan 1, 2018
  • Jarosław Wikarek + 2 more

Scheduling and resource allocation problems are widespread in many areas of today’s technology and management. Their different forms and structures appear in production, logistics, software engineering, computer networks, etc. In practice, however, classical scheduling problems with fixed structures and only standard constraints (precedence, disjoint etc.) are rare. Practical scheduling problems include also logical and non-linear constraints and use non-standard criteria of schedule evaluations. In many cases, decision makers are interested in the feasibility and/or optimality of a given schedule for specified conditions formulated as questions, for example, Is it possible…?, What is the minimum/maximum…?, What if..? etc. Thus there is a need to develop a programming framework that will facilitate the modeling and solving a variety of diverse scheduling problems. This paper proposes such a constraint-based framework for modeling and solving scheduling problems. It was built with the CLP (Constraint Logic Programming) environment and supported with MP (Mathematical Programming).

Save Icon
Up Arrow
Open/Close
  • Ask R Discovery Star icon
  • Chat PDF Star icon

AI summaries and top papers from 250M+ research sources.