Integrating Multimedia Applications in Hard Real-Time Systems
RTSS '98 Proceedings of the IEEE Real-Time Systems Symposium
Dynamic Integrated Scheduling of Hard Real-Time, Soft Real-Time and Non-Real-Time Processes
RTSS '03 Proceedings of the 24th IEEE International Real-Time Systems Symposium
Multiprocessor Energy-Efficient Scheduling with Task Migration Considerations
ECRTS '04 Proceedings of the 16th Euromicro Conference on Real-Time Systems
Workload prediction and dynamic voltage scaling for MPEG decoding
ASP-DAC '06 Proceedings of the 2006 Asia and South Pacific Design Automation Conference
Leakage-Aware Energy-Efficient Scheduling of Real-Time Tasks in Multiprocessor Systems
RTAS '06 Proceedings of the 12th IEEE Real-Time and Embedded Technology and Applications Symposium
QEMU, a fast and portable dynamic translator
ATEC '05 Proceedings of the annual conference on USENIX Annual Technical Conference
Architectural Characterization of Processor Affinity in Network Processing
ISPASS '05 Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software, 2005
FPGA-Accelerated Simulation Technologies (FAST): Fast, Full-System, Cycle-Accurate Simulators
Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture
Parallelization of IBM mambo system simulator in functional modes
ACM SIGOPS Operating Systems Review
Software-cooperative power-efficient heterogeneous multi-core for media processing
Proceedings of the 2008 Asia and South Pacific Design Automation Conference
Energy-Efficient Real-Time Co-scheduling of Multimedia DSP Jobs
SUTC '08 Proceedings of the 2008 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (sutc 2008)
FaCSim: a fast and cycle-accurate architecture simulator for embedded systems
Proceedings of the 2008 ACM SIGPLAN-SIGBED conference on Languages, compilers, and tools for embedded systems
Power reduction via macroblock prioritization for power aware H.264 video applications
CODES+ISSS '08 Proceedings of the 6th IEEE/ACM/IFIP international conference on Hardware/Software codesign and system synthesis
Energy-efficient real-time scheduling of multimedia tasks on multi-core processors
Proceedings of the 2010 ACM Symposium on Applied Computing
Corey: an operating system for many cores
OSDI'08 Proceedings of the 8th USENIX conference on Operating systems design and implementation
A Virtual Timing Device for Program Performance Analysis
CIT '10 Proceedings of the 2010 10th IEEE International Conference on Computer and Information Technology
COREMU: a scalable and portable parallel full-system emulator
Proceedings of the 16th ACM symposium on Principles and practice of parallel programming
A portable, efficient inter-core communication scheme for embedded multicore platforms
Journal of Systems Architecture: the EUROMICRO Journal
Journal of Signal Processing Systems
MobileFBP: Designing portable reconfigurable applications for heterogeneous systems
Journal of Systems Architecture: the EUROMICRO Journal
Hi-index | 0.00 |
Heterogeneous multicore systems have become the trend for the embedded market due to its advantage of power/performance over traditional designs. However, monitoring the workload, scheduling the tasks, and managing the energy consumption to enable energy-efficient, real-time applications are increasingly challenging on such systems as both the applications and systems become complex. In this paper, we introduce a comprehensive approach to address the key problems and accelerate the design of a heterogeneous multicore embedded system by providing a suite of energy-aware system software with tightly coupled real-time support and performance/power modeling facilities. We start with a rapid full system modeling/simulation framework to characterize the application workload, design energy-saving algorithms, and verify if performance requirements are met by hardware specifications during the early design stage. With special considerations on today's multicore embedded systems, we developed several key components and integrated them as a system software suite: a portable, efficient library to support inter-core communications and multicore programming, a lightweight kernel for dynamically monitoring and sharing the workload among the processor cores, and a dynamic voltage and frequency scaling scheme to adjust the setting of the processors to save energy. The system software has been implemented on the PAC Duo system as a case study, with experimental results to demonstrate the effectiveness of the proposed approach. This paper discusses the novel techniques included in this system software and shares the lessons that we have learned from this work.