Comparing algorithm for dynamic speed-setting of a low-power CPU
MobiCom '95 Proceedings of the 1st annual international conference on Mobile computing and networking
A hierarchial CPU scheduler for multimedia operating systems
OSDI '96 Proceedings of the second USENIX symposium on Operating systems design and implementation
Continuous profiling: where have all the cycles gone?
ACM Transactions on Computer Systems (TOCS)
System support for automatic profiling and optimization
Proceedings of the sixteenth ACM symposium on Operating systems principles
CPU reservations and time constraints: efficient, predictable scheduling of independent activities
Proceedings of the sixteenth ACM symposium on Operating systems principles
Predicting MPEG execution times
SIGMETRICS '98/PERFORMANCE '98 Proceedings of the 1998 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
The simulation and evaluation of dynamic voltage scaling algorithms
ISLPED '98 Proceedings of the 1998 international symposium on Low power electronics and design
Voltage scheduling problem for dynamically variable voltage processors
ISLPED '98 Proceedings of the 1998 international symposium on Low power electronics and design
Power management techniques for mobile communication
MobiCom '98 Proceedings of the 4th annual ACM/IEEE international conference on Mobile computing and networking
Resource containers: a new facility for resource management in server systems
OSDI '99 Proceedings of the third symposium on Operating systems design and implementation
Proceedings of the seventeenth ACM symposium on Operating systems principles
Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment
Journal of the ACM (JACM)
A survey of design techniques for system-level dynamic power management
IEEE Transactions on Very Large Scale Integration (VLSI) Systems - Special section on low-power electronics and design
Voltage scheduling in the IpARM microprocessor system
ISLPED '00 Proceedings of the 2000 international symposium on Low power electronics and design
Improving dynamic voltage scaling algorithms with PACE
Proceedings of the 2001 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
ASPLOS IX Proceedings of the ninth international conference on Architectural support for programming languages and operating systems
Dynamic voltage scaling and power management for portable systems
Proceedings of the 38th annual Design Automation Conference
Hard real-time scheduling for low-energy using stochastic data and DVS processors
ISLPED '01 Proceedings of the 2001 international symposium on Low power electronics and design
Real-time dynamic voltage scaling for low-power embedded operating systems
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
Flexible Soft Real-Time Processing in Middleware
Real-Time Systems - Flexible Scheduling on Real-Time Systems
Critical power slope: understanding the runtime effects of frequency scaling
ICS '02 Proceedings of the 16th international conference on Supercomputing
ECOSystem: managing energy as a first class operating system resource
Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
Priority Inheritance Protocols: An Approach to Real-Time Synchronization
IEEE Transactions on Computers
Reducing the Energy Usage of Office Applications
Middleware '01 Proceedings of the IFIP/ACM International Conference on Distributed Systems Platforms Heidelberg
A SMART scheduler for multimedia applications
ACM Transactions on Computer Systems (TOCS)
Voltage-Clock-Scaling Adaptive Scheduling Techniques for Low Power in Hard Real-Time Systems
RTAS '00 Proceedings of the Sixth IEEE Real Time Technology and Applications Symposium (RTAS 2000)
Dynamic Voltage Scheduling Using Adaptive Filtering of Workload Traces
VLSID '01 Proceedings of the The 14th International Conference on VLSI Design (VLSID '01)
DRPM: dynamic speed control for power management in server class disks
Proceedings of the 30th annual international symposium on Computer architecture
Dynamic and Aggressive Scheduling Techniques for Power-Aware Real-Time Systems
RTSS '01 Proceedings of the 22nd IEEE Real-Time Systems Symposium
Differentiated Services with Statistical Real-Time Guarantees in Static-Priority Scheduling Networks
RTSS '01 Proceedings of the 22nd IEEE Real-Time Systems Symposium
Quality-Assuring Scheduling-Using Stochastic Behavior to Improve Resource Utilization
RTSS '01 Proceedings of the 22nd IEEE Real-Time Systems Symposium
Probabilistic analysis and scheduling of critical soft real-time systems
Probabilistic analysis and scheduling of critical soft real-time systems
Energy-efficient soft real-time CPU scheduling for mobile multimedia systems
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Integrated power management for video streaming to mobile handheld devices
MULTIMEDIA '03 Proceedings of the eleventh ACM international conference on Multimedia
Managing battery lifetime with energy-aware adaptation
ACM Transactions on Computer Systems (TOCS)
Managing battery lifetime with energy-aware adaptation
ACM Transactions on Computer Systems (TOCS)
Practical PACE for embedded systems
Proceedings of the 4th ACM international conference on Embedded software
Power-Aware Scheduling for AND/OR Graphs in Real-Time Systems
IEEE Transactions on Parallel and Distributed Systems
Practical voltage scaling for mobile multimedia devices
Proceedings of the 12th annual ACM international conference on Multimedia
Vertigo: automatic performance-setting for Linux
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
Resource overbooking and application profiling in shared hosting platforms
OSDI '02 Proceedings of the 5th symposium on Operating systems design and implementationCopyright restrictions prevent ACM from being able to make the PDFs for this conference available for downloading
GRACE-1: Cross-Layer Adaptation for Multimedia Quality and Battery Energy
IEEE Transactions on Mobile Computing
Operating System Modifications for Task-Based Speed and Voltage
Proceedings of the 1st international conference on Mobile systems, applications and services
Surplus fair scheduling: a proportional-share CPU scheduling algorithm for symmetric multiprocessors
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Policies for dynamic clock scheduling
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
CPU Service Classes for Multimedia Applications
ICMCS '99 Proceedings of the IEEE International Conference on Multimedia Computing and Systems - Volume 2
The design and implementation of an operating system to support distributed multimedia applications
IEEE Journal on Selected Areas in Communications
System-wide energy minimization for real-time tasks: Lower bound and approximation
ACM Transactions on Embedded Computing Systems (TECS)
Aggressive dynamic voltage scaling for energy-aware video playback based on decoding time estimation
EMSOFT '09 Proceedings of the seventh ACM international conference on Embedded software
Statistical framework for video decoding complexity modeling and prediction
IEEE Transactions on Circuits and Systems for Video Technology
Achieving viewing time scalability in mobile video streaming using scalable video coding
MMSys '10 Proceedings of the first annual ACM SIGMM conference on Multimedia systems
A probabilistic and energy-efficient scheduling approach for online application in real-time systems
Proceedings of the 47th Design Automation Conference
On the energy consumption and performance of systems software
Proceedings of the 4th Annual International Conference on Systems and Storage
CAME: cloud-assisted motion estimation for mobile video compression and transmission
Proceedings of the 22nd international workshop on Network and Operating System Support for Digital Audio and Video
ACM Transactions on Embedded Computing Systems (TECS) - Special section on ESTIMedia'12, LCTES'11, rigorous embedded systems design, and multiprocessor system-on-chip for cyber-physical systems
Quality-aware media scheduling on MPSoC platforms
Proceedings of the Conference on Design, Automation and Test in Europe
Self-adaptive on-chip system based on cross-layer adaptation approach
International Journal of Reconfigurable Computing
Hi-index | 0.00 |
This article presents the design, implementation, and evaluation of EScheduler, an energy-efficient soft real-time CPU scheduler for multimedia applications running on a mobile device. EScheduler seeks to minimize the total energy consumed by the device while meeting multimedia timing requirements. To achieve this goal, EScheduler integrates dynamic voltage scaling into the traditional soft real-time CPU scheduling: It decides at what CPU speed to execute applications in addition to when to execute what applications. EScheduler makes these scheduling decisions based on the probability distribution of cycle demand of multimedia applications and obtains their demand distribution via online profiling.We have implemented EScheduler in the Linux kernel and evaluated it on a laptop with a variable-speed CPU and typical multimedia codecs. Our experimental results show four findings: first, the cycle demand distribution of our studied codecs is stable or changes slowly. This stability implies the feasibility to perform our proposed energy-efficient scheduling with low overhead. Second, EScheduler delivers soft performance guarantees to these codecs by bounding their deadline miss ratio under the application-specific performance requirements. Third, EScheduler reduces the total energy of the laptop by 14.4% to 37.2% relative to the scheduling algorithm without voltage scaling and by 2% to 10.5% relative to voltage scaling algorithms without considering the demand distribution. Finally, EScheduler saves energy by 2% to 5% by explicitly considering the discrete CPU speeds and the corresponding total power of the whole laptop, rather than assuming continuous speeds and cubic speed-power relationship.