Investigating the Relative Performance of Static and Dynamic Instruction Scheduling
There are two distinct groups of research into ILP. Those that strongly favour static instruction scheduling and those that favour dynamic instruction scheduling. This paper introduces powerful static and dynamic scheduling models and combines them within the framework of a single simulation environment. Both individual models achieve respectable speedups; dynamic schedullng significantly out-performs static scheduling when an idealised processor model with perfect branch prediction is used. However, when a realistic branch predictor is substituted, the roles are reversed, and static scheduling achieves the higher performance. Similarly, static scheduling performs better in the absence of branch prediction or when processor resources are restricted. Finally, we combine static scheduling with out-of-order instruction issue. Disappointingly, when an ideal out-of-order processor is used, scheduled code fails to match the performance of unscheduled code. Furthermore, with realistic branch predictlon, out-of-order issue fails to improve the performance of scheduled code.
- Research Article
88
- 10.1109/2.30730
- Jul 1, 1989
- Computer
An overview of and survey solutions to the problem of instruction scheduling for pipelined computers are provided. The author demonstrated that dynamic instruction scheduling can provide performance improvements not possible with static scheduling alone. He describes a high-performance computer, the Astronautics ZS-1, which uses novel methods for implementing dynamic scheduling and which can outperform computers using similar-speed technologies that rely solely on state-of-the-art static scheduling techniques. >
- Research Article
5
- 10.1145/325096.325140
- May 1, 1990
- ACM SIGARCH Computer Architecture News
article Free Access Share on An investigation of static versus dynamic scheduling Authors: Carl E. Love University of Colorado at Boulder, 2505 Table Mesa Dr. Boulder, Colorado University of Colorado at Boulder, 2505 Table Mesa Dr. Boulder, ColoradoView Profile , Harry F. Jordan University of Colorado at Boulder, Dept. of Electrical Engineering, Campus Box 425 Boulder, Colorado University of Colorado at Boulder, Dept. of Electrical Engineering, Campus Box 425 Boulder, ColoradoView Profile Authors Info & Claims ACM SIGARCH Computer Architecture NewsVolume 18Issue 2SIJune 1990 pp 192–201https://doi.org/10.1145/325096.325140Published:01 May 1990Publication History 6citation450DownloadsMetricsTotal Citations6Total Downloads450Last 12 Months23Last 6 weeks7 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my Alerts New Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
- Research Article
1
- 10.1023/a:1008125919892
- Aug 1, 1999
- Journal of VLSI signal processing systems for signal, image and video technology
We consider the increased performance that can be obtained by using in concert, three previously proposed (and in two cases used in commercial systems) ideas. These ideas are aggressive dynamic (run time) instruction scheduling, reuse of decoded instructions, and trace scheduling. We show that these ideas complement and support one another. Hence, while each of these ideas has been shown to have merit in its own right, when used in concert, we claim the overall advantage is greater than that obtained by using any one singly. To support this claim, we present the results from running several common multimedia kernels. Overall, these results show an average speedup of 3.50 times what can be had by using dynamic instruction scheduling alone.
- Conference Article
4
- 10.1109/ccdc.2008.4597429
- Jul 1, 2008
The characteristics of static and dynamic job shop scheduling are discussed. And also analyzes the concept and action of multi-agent system. Bring forward and built a job shop scheduling model based on multi-agent in order to accommodate the changes created in the production process. The job shop production scheduling model and dynamic scheduling model are presented In the model, the entities in the job shop are abstracted as manager agent, task agent and resource agent with multi-agent technology. According to contract net protocol (CNP), agents cooperate with each other through contract net and the process of inviting public bidding makes for completing the production order and dynamic scheduling.
- Research Article
75
- 10.1109/tvt.2017.2763150
- Feb 1, 2018
- IEEE Transactions on Vehicular Technology
In data relay satellite (DRS) systems, one of the most important issues is the task scheduling. Most of the existing algorithms focused on the scenario of fixed task sets; however, the scheduled tasks can be constantly changing due to the various uncertain factors in the space environment. To deal with this challenge, we propose a two-phase task scheduling algorithm to enhance the performance of scheduling, including an initial scheduling phase and a dynamic scheduling phase. In the initial scheduling phase, we construct a scheduling model with multiple constraint conditions, and also design an improved genetic algorithm with elite reserved strategy and a crowding function to find the initial scheduling solution. While in the dynamic scheduling phase, we further investigate the possibility of task preemptive switching and decomposition, by constructing a dynamic scheduling model with multiple objectives, including maximizing the total weight of scheduled tasks, minimizing the change of the scheduling scheme, and minimizing the number of decomposed subtasks. Meanwhile, a preemptive dynamic scheduling algorithm (PDSA) is designed to solve the proposed dynamic scheduling model. Our simulation results show that the proposed PDSA is superior to the existing whole rescheduling algorithm in terms of the number of completed tasks, the rescheduling rate of scheme, as well as the processing time, which can significantly improve the performance of dynamic scheduling in DRS systems.
- Conference Article
16
- 10.1109/pact.2013.6618816
- Oct 1, 2013
The stream programming model has received a lot of interest because it naturally exposes task, data, and pipeline parallelism. However, most prior work has focused on static scheduling of regular stream programs. Therefore, irregular applications cannot be handled in static scheduling, and the load imbalance caused by static scheduling faces scalability limitations in many-core systems. In this paper, we introduce the DANBI1 programming model which supports irregular stream programs and propose dynamic scheduling techniques. Scheduling irregular stream programs is very challenging and the load imbalance becomes a major hurdle to achieve scalability. Our dynamic load-balancing scheduler exploits producer-consumer relationships already expressed in the stream program to achieve scalability. Moreover, it effectively avoids the thundering-herd problem and dynamically adapts to load imbalance in a probabilistic manner. It surpasses prior static stream scheduling approaches which are vulnerable to load imbalance and also surpasses prior dynamic stream scheduling approaches which have many restrictions on supported program types, on the scope of dynamic scheduling, and on preserving data ordering. Our experimental results on a 40-core server show that DANBI achieves an almost linear scalability and outperforms state-of-the-art parallel runtimes by up to 2.8 times.
- Conference Article
3
- 10.23919/eecsi56542.2022.9946526
- Oct 6, 2022
A mobile cloud computing (MCC) workflow task dynamic scheduling model is designed to improve the level of adaptation of MCC workflow task dynamic scheduling. The group decision model parameter set of MCC workflow task dynamic scheduling is constructed, the preference information of MCC workflow task flow is assembled and clustered using multi-scale and multi-scalar feature analysis methods, and the dynamic feature evolution clustering analysis model of MCC workflow task is constructed, the dynamic information flow regression parameters of MCC workflow task are obtained by partial least squares method, and the fuzzy clustering processing of MCC workflow task dynamic scheduling is realized according to each attribute The fuzzy clustering process of dynamic scheduling of MCC workflow tasks is realized according to the results of weight vector assignment. Finally, the dynamic adaptive scheduling of MCC workflow tasks is realized according to the information clustering results. The experimental findings indicate that the technique has an excellent dynamic distribution and strong comprehensive assessment capability during MCC workflow task scheduling, aiding in the adaptive assignment of MCC workflow tasks.
- Conference Article
10
- 10.1109/ieem.2013.6962673
- Dec 1, 2013
Static and dynamic machine scheduling problems have been widely addressed in literature. Compared with static scheduling, dynamic scheduling is more difficult since the detailed information about jobs and machines (like the arrival time of jobs) is not available at the initial time. Hence the lack of information makes dynamic scheduling problems harder than static ones. In this paper, the learning agent based scheduling system is developed to dynamically schedule machines in parallel. The scheduling system contains the learning agent and the system environment. The agent is trained by the Q-Learning algorithm, and the best rule is selected according to the current state of the system, while the system environment executes the rule selected by the agent. In the simulation experiment, the proposed agent uses the rules of SPT, EDD and FCFS as actions, and is tested with two objectives: minimizing the maximum lateness and minimizing percentage of tardy jobs. The results demonstrate that the learning agent is suitable for complex dynamic parallel machine scheduling.
- Supplementary Content
- 10.25394/pgs.7429874.v1
- Jan 16, 2019
- Figshare
Growing concerns over global warming and increasing fuel costs have pushed the traditional fuel-based centralized electrical grid to the forefront of mounting public pressure. These concerns will only intensify in the future, owing to the growth in electricity demand. Such growths require increased generation of electricity to meet the demand, and this means more carbon footprint from the electrical grid. To meet the growing demand economically by using clean sources of energy, the electrical grid needs significant structural and operational changes to cope with various challenges. Microgrids (µGs) can be an answer to the structural requirement of the electrical grid. µGs integrate renewables and serve local needs, thereby, reducing line losses and improving resiliency. However, stochastic nature of electricity harvest from renewables makes its integration into the grid challenging. The time varying and intermittentnature of renewables and consumer demand can be mitigated by the use of storages and dynamic load scheduling. Automated dynamic load scheduling constitutes the operational changes that could enable us to achieve energy efficiency in the grid.The current research works on automated load scheduling primarily focuses on scheduling residential and commercial building loads, while the current research on manufacturing scheduling is based on static approaches with very scarce literature on job shop scheduling. However, residential, commercial and, industrial sector, each contribute to about one-third of the total electricity consumption. A few researchworks have been done focusing on dynamic scheduling in manufacturing facilities for energy efficiency. In a smart grid scenario, consumers are coupled through electricitypool and storage. Thus, this research investigates the problem of integrating production line loads with building loads for optimal scheduling to reduce the total electricitycost in a µG.This research focuses on integrating the different types of loads from different types of consumers using automated dynamic load scheduling framework for sequential decision making. After building a deterministic model to be used as a benchmark, dynamic load scheduling models are constructed. Firstly, an intelligent algorithm is developed for load scheduling from a consumer’s perspective. Secondly, load scheduling model is developed based on central grid controller’s perspective. And finally, a reinforcement learning model is developed for improved load scheduling by sharingamong multiple µGs. The performance of the algorithms is compared against different well-known individualistic strategies, static strategies and, optimal benchmarksolutions. The proposed dynamic load scheduling framework is model free with minimum assumptions and it outperforms the different well-known heuristics and static strategies while obtains solutions comparable to the optimal benchmark solution.The future electrical grid is envisioned to be an interconnected network of µGs. In addition to the automated load scheduling in a µG, coordination among µGs bydemand and capacity sharing can also be used to mitigate stochastic nature of supply and demand in an electrical grid. In this research, demand and resource sharingamong µGs is proposed to leverage the interaction between the different µGs for developing load scheduling policy based on reinforcement learning.
- Book Chapter
- 10.1007/978-3-642-39304-4_2
- Jan 1, 2013
The Central Processing Unit (CPU) in a microprocessor is responsible for running machine instructions as fast as possible so that the machine performance is at its maximum level. While simple in design, in-order execution processors provide sub-optimal performance, because any delay in instruction processing blocks the entire instruction stream. To overcome this limitation, modern highperformance designs use out-of-order (OoO) instruction scheduling to better exploit available Instruction-Level Parallelism (ILP), and both static (compilerassisted) and dynamic (hardware-assisted) scheduling solutions are possible. The hardware-assisted scheduling integrates an OoO core that requires a complex dynamic instruction scheduler and additional datapath structures are utilized to hold the in-flight instructions in program order to support the reconstruction of precise program state. The logic becomes even more complex when superscalar (those capable of executing multiple instructions every clock cycle) designs are used. This chapter gives a brief introduction to instruction scheduling on pipelined superscalar architectures, and, then, explains some of the keystone static and dynamic instruction scheduling algorithms.
- Book Chapter
1
- 10.1007/978-3-030-72789-5_1
- Jan 1, 2021
Embedded multicore processors running hard real-time applications such as engine control programs require an appropriate scheduling routine to meet the real-time deadline constraints. These applications typically consist of various conditional branches which change the flow of the program and the task executions based on sensors inputs and vehicle status information. Conventionally, dynamic on-line scheduling was the only option for such applications that have unpredictable runtime behaviors. However, techniques for compilers and schedulers allow static off-line scheduling to be applied to engine control programs by utilizing execution profile feedback methods to feed task execution time information to the compiler. This paper is the first to compare dynamic scheduling and static scheduling schemes through the OSCAR multi-grain automatic parallelizing compiler and its overheads on an actual engine control program using an embedded multicore processor implemented on an FPGA. Evaluations and analysis on the engine control program indicate promising results for static scheduling, recording a 2.53\(\times \) speedup on 4 cores compared to single core execution. In contrast, speedup on dynamic scheduling with 4 cores was only 0.86x compared to sequential execution. The evaluation shows that static scheduling with execution profile feedback methods is an effective tool for real hard-real time control applications that have task granularity that is too fine for dynamic scheduling on embedded multicore processors.KeywordsParallelizing compilerMulticoreDynamic schedulingStatic schedulingScheduling overheadPerformance comparisonHard real-time control systems
- Conference Article
14
- 10.5555/2523721.2523749
- Oct 7, 2013
The stream programming model has received a lot of interest because it naturally exposes task, data, and pipeline parallelism. However, most prior work has focused on static scheduling of regular stream programs. Therefore, irregular applications cannot be handled in static scheduling, and the load imbalance caused by static scheduling faces scalability limitations in many-core systems. In this paper, we introduce the DANBI1 programming model which supports irregular stream programs and propose dynamic scheduling techniques. Scheduling irregular stream programs is very challenging and the load imbalance becomes a major hurdle to achieve scalability. Our dynamic load-balancing scheduler exploits producer-consumer relationships already expressed in the stream program to achieve scalability. Moreover, it effectively avoids the thundering-herd problem and dynamically adapts to load imbalance in a probabilistic manner. It surpasses prior static stream scheduling approaches which are vulnerable to load imbalance and also surpasses prior dynamic stream scheduling approaches which have many restrictions on supported program types, on the scope of dynamic scheduling, and on preserving data ordering. Our experimental results on a 40-core server show that DANBI achieves an almost linear scalability and outperforms state-of-the-art parallel runtimes by up to 2.8 times.
- Conference Article
6
- 10.1109/ccdc.2017.7979329
- May 1, 2017
Because of different refining route of every charge, it's difficult to make a static scheduling plan for steelmaking-refining-continuous casting (SRCC) production. There are many types of disturbances that upset the scheduling plan including processing time variation, temperature variation, quality variation, flow speed variation of cater, machine failures, and which could cause the static scheduling to become inefficient and even infeasible. It is necessary to adjust the schedule or generate a new executable schedule upon the occurrence of unanticipated disruptions and changes. An optimization scheduling strategy framework is proposed including static scheduling, dynamic scheduling, assistant equipment scheduling. The static scheduling plan is made by using expert systems, programming method, fuzzy evaluation. The dynamic scheduling is including the partial rescheduling and complete rescheduling by using heuristic and programming methods. The assistant equipment scheduling plan is made based on heuristic method. The dynamic intelligent scheduling system was developed with the optimization scheduling strategy, and has been applied to a large steel enterprise steelmaking-refining-continuous casting production.
- Research Article
5
- 10.1109/tpds.2014.2325833
- Jun 1, 2015
- IEEE Transactions on Parallel and Distributed Systems
The stream programming model has received much interest because it naturally exposes task, data, and pipeline parallelism. However, most priorwork has focused on the static scheduling of regular stream programs. Therefore, irregular applications cannot be handled in static scheduling, and the load imbalance caused by static scheduling faces scalability limitations in many-core systems. In this paper, we introduce the DANBI programming model, which supports irregular stream programs, and propose dynamic scheduling techniques. Scheduling irregular stream programs is very challenging, and the load imbalance becomes a major hurdle to achieving scalability. Our dynamic load-balancing scheduler exploits producer-consumer relationships already expressed in the DANBI program to achieve scalability. Moreover, it effectively avoids the thundering-herd problem and dynamically adapts to load imbalance in a probabilistic manner. It surpasses prior static stream scheduling approaches which are vulnerable to load imbalance and also surpasses prior dynamic stream scheduling approaches which result in many restrictions on supported program types, on the scope of dynamic scheduling, and on data ordering preservation. Our experimental results on a 40-core server show that DANBI achieves an almost linear scalability and outperforms state-of-the-art parallel runtimes by up to 2.8 times.
- Research Article
20
- 10.3390/su15031772
- Jan 17, 2023
- Sustainability
The plant protection unmanned aerial vehicle (UAV) scheduling model is of great significance to improve the operation income of UAV plant protection teams and ensure the quality of the operation. The simulated annealing algorithm (SA) is often used in the optimization solution of scheduling models, but the SA algorithm has the disadvantages of easily falling into local optimum and slow convergence speed. In addition, the current research on the UAV scheduling model for plant protection is mainly oriented to static scenarios. In the actual operation process, the UAV plant protection team often faces unexpected situations, such as new orders and changes in transfer path costs. The static model cannot adapt to such emergencies. In order to solve the above problems, this paper proposes to use the Levi distribution method to improve the simulated annealing algorithm, and it proposes a dynamic scheduling model driven by unexpected events, such as new orders and transfer path changes. Order sorting takes into account such factors as the UAV plant protection team’s operating income, order time window, and job urgency, and prioritizes job orders. In the aspect of order allocation and solution, this paper proposes a Levy annealing algorithm (Levy-SA) to solve the scheduling strategy of plant protection UAVs in order to solve the problem that the traditional SA is easy to fall into local optimum and the convergence speed is slow. This paper takes the plant protection operation scenario of “one spray and three defenses” for wheat in Nanjing City, Jiangsu Province, as an example, to test the plant protection UAV scheduling model under the dynamic conditions of new orders and changes in transfer costs. The results show that the plant protection UAV dynamic scheduling model proposed in this paper can meet the needs of plant protection UAV scheduling operations in static and dynamic scenarios. Compared with SA and greedy best first search algorithm (GBFS), the proposed Levy-SA has better performance in static and dynamic programming scenarios. It has more advantages in terms of man-machine adjustment distance and total operation time. This research can provide a scientific basis for the dynamic scheduling and decision analysis of plant protection UAVs, and provide a reference for the development of an agricultural machinery intelligent scheduling system.