Abstract
We consider the classical problem of minimizing off-line the total energy consumption required to execute a set of n real-time jobs on a single processor with a finite number of available speeds. Each real-time job is defined by its release time, size, and deadline (all bounded integers). The goal is to find a processor speed schedule, such that no job misses its deadline and the energy consumption is minimal. We propose a pseudo-linear time algorithm that checks the schedulability of the given set of n jobs and computes an optimal speed schedule. The time complexity of our algorithm is in \({\mathcal {O}}(n)\), to be compared with \({\mathcal {O}}(n\log (n))\) for the best known solution. Besides the complexity gain, the main interest of our algorithm is that it is based on a completely different idea: instead of computing the critical intervals, it sweeps the set of jobs and uses a dynamic programming approach to compute an optimal speed schedule. Our linear time algorithm is still valid (with some changes) with arbitrary (non-convex) power functions and when switching costs are taken into account.
Similar content being viewed by others
Notes
The critical interval is the time interval with the highest load per time unit, to be precisely defined later.
The arithmetic complexity of an algorithm is the number of elementary operations it requires, regardless of the size of their arguments.
Increasing paths over a 2D integer lattice are staircases.
To be more precise, \(|{\mathcal {P}}({w})|\) is bounded by \(|{\mathcal {S}}|\), and since \({\mathcal {S}} = \{0, 1, {\ldots } m-1\}\), we have \(|{\mathcal {S}}| = {s_{\max \limits }}+1\).
References
Bandari M, Simon R, Aydin H (2014) Energy management of embedded wireless systems through voltage and modulation scaling under probabilistic workloads. In: International green computing conference, IGCC’14. IEEE Computer Society, Dallas, pp 1–10
Burd T, Brodersen R (2000) Design issues for dynamic voltage scaling. In: International symposium on low power electronics and design, ISLPED’00, rapallo, Italy
Frances Yao F, Demers AJ, Shenker S (1995) A scheduling model for reduced CPU energy. In: 36th annual symposium on foundations of computer science. IEEE Computer Society, Milwaukee, pp 374–382
Gaujal B, Girault A, Plassart S (2017) Dynamic speed scaling minimizing expected energy consumption for real-time tasks. Technical Report HAL-01615835 Inria
Gaujal B, Girault A, Plassart S (2019) A linear time algorithm for computing off-line speed schedules minimizing energy consumption. In: MSR 2019 - 12ème colloque sur la modélisation des systèmes réactifs, Angers, France, pp 1–14
Gaujal B, Navet N (2007) Dynamic voltage scaling under EDF revisited. Real-Time Systems 37(1):77–97. The original publication is available at www.springerlink.com
Hilton P, Pedersen J (1991) Catalan numbers, their generalization, and their uses. Math Intell 13(2):64–75
Li K (2016) Energy and time constrained task scheduling on multiprocessor computers with discrete speed levels. J Parallel Distrib Comput 95(C):15–28
Li M, Yao FF (2005) An efficient algorithm for computing optimal discrete voltage schedules. SIAM J Comput 35:658–671
Li M, Yao FF, Yuan H (2017) An o(n2) algorithm for computing optimal continuous voltage schedules. In: Annual conference on theory and applications of models of computation, TAMC’17, volume 10185 of LNCS, Bern, pp 389–400
Mao J, Cassandras CG, Zhao Q (2007) Optimal dynamic voltage scaling in energy-limited nonpreemptive systems with real-time constraints. Trans Mob Comput 6(6):678–688
Puterman ML (2005) Markov decision process : discrete stochastic dynamic programming. Wiley, series in probability and statistics edition
Schrijver A (1998) Theory of linear and integer programming. John Wiley & Sons
Stankovic J, Spuri M, Ramamritham K, Buttazzo G (1998) Deadline scheduling for real-time systems: EDF and related algorithms. Kluwer Academic Publisher
Wang J, Roop P, Girault A (2016) Energy and timing aware synchronous programming. In: International conference on embedded software, EMSOFT’16. ACM, Pittsburgh
Wu Q, Juang P, Martonosi M, Clark DW (2005) Voltage and frequency control with adaptive reaction time in multiple-clock-domain processors. In: International conference on high-performance computer architecture, HPCA’05. IEEE, San Francisco, pp 178–189
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This article belongs to the Topical Collection: Topical Collection on Recent Trends in Reactive Systems
Guest Editor: Sebastian Lahaye
This work has been partially supported by the LabEx PERSYVAL-Lab (ANR-11-LABX-0025-01) funded by the French program Investissement d’Avenir.
Rights and permissions
About this article
Cite this article
Gaujal, B., Girault, A. & Plassart, S. A pseudo-linear time algorithm for the optimal discrete speed minimizing energy consumption. Discrete Event Dyn Syst 31, 163–184 (2021). https://doi.org/10.1007/s10626-020-00327-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10626-020-00327-9