Worst-case energy consumption minimization based on interference analysis and bank mapping in multicore systems

Energy is a scarce resource in real-time embedded systems due to the fact that most of them run on batteries. Hence, the designers should ensure that the energy constraints are satisfied in addition to the deadline constraints. This necessitates the consideration of the impact of the interference due to shared, low-level hardware resources such as the cache on the worst-case energy consumption of the tasks. Toward this aim, this article proposes a fine-grained approach to analyze the bank-level interference (bank conflict and bus access interference) on real-time multicore systems, which can reasonably estimate runtime interferences in shared cache and yield tighter worst-case energy consumption. In addition, we develop a bank-to-core mapping algorithm for reducing bank-level interference and improving the worst-case energy consumption. The experimental results demonstrate that our approach can improve the tightness of worst-case energy consumption by 14.25% on average compared to upper-bound delay approach. The bank-to-core mapping provides significant benefits in worst-case energy consumption reduction with 7.23%.

[1]  Swarup Bhunia,et al.  Dynamic Cache Tuning for Efficient Memory Based Computing in Multicore Architectures , 2013, 2013 26th International Conference on VLSI Design and 2013 12th International Conference on Embedded Systems.

[2]  Zhihua Xia,et al.  A Privacy-Preserving and Copy-Deterrence Content-Based Image Retrieval Scheme in Cloud Computing , 2016, IEEE Transactions on Information Forensics and Security.

[3]  Frank Vahid,et al.  A highly configurable cache for low energy embedded systems , 2005, TECS.

[4]  Tulika Mitra,et al.  Exploring locking & partitioning for predictable shared caches on multi-cores , 2008, 2008 45th ACM/IEEE Design Automation Conference.

[5]  Jan Gustafsson,et al.  The Mälardalen WCET Benchmarks: Past, Present And Future , 2010, WCET.

[6]  Laurent Pautet,et al.  Scheduling algorithms to reduce the static energy consumption of real-time systems , 2014, Real-Time Systems.

[7]  Ann Gordon-Ross,et al.  A survey on cache tuning from a power/energy perspective , 2013, CSUR.

[8]  Jinjun Chen,et al.  Weighted principal component analysis-based service selection method for multimedia services in cloud , 2014, Computing.

[9]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[10]  Xianfeng Li,et al.  Chronos: A timing analyzer for embedded software , 2007, Sci. Comput. Program..

[11]  Tobias Distler,et al.  Worst-Case Energy Consumption Analysis for Energy-Constrained Embedded Systems , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[12]  Peng Jin,et al.  Fast reference frame selection based on content similarity for low complexity HEVC encoder , 2016, J. Vis. Commun. Image Represent..

[13]  Xingming Sun,et al.  Achieving Efficient Cloud Search Services: Multi-Keyword Ranked Search over Encrypted Cloud Data Supporting Parallel Computing , 2015, IEICE Trans. Commun..

[14]  Sanjay Ranka,et al.  Dynamic cache reconfiguration and partitioning for energy optimization in real-time multi-core systems , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[15]  Bin Gu,et al.  Incremental Support Vector Learning for Ordinal Regression , 2015, IEEE Transactions on Neural Networks and Learning Systems.

[16]  Xingming Sun,et al.  Enabling Personalized Search over Encrypted Outsourced Data with Efficiency Improvement , 2016, IEEE Transactions on Parallel and Distributed Systems.

[17]  Marcus Völp,et al.  Has energy surpassed timeliness? Scheduling energy-constrained mixed-criticality systems , 2014, 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[18]  Zhao Zhang,et al.  MASTER: A Multicore Cache Energy-Saving Technique Using Dynamic Cache Reconfiguration , 2014, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[19]  Francisco J. Cazorla,et al.  Hardware support for WCET analysis of hard real-time multicore systems , 2009, ISCA '09.

[20]  Peter Petrov,et al.  Cache partitioning for energy-efficient and interference-free embedded multitasking , 2010, TECS.

[21]  Lui Sha,et al.  Optimizing Tunable WCET with Shared Resource Allocation and Arbitration in Hard Real-Time Multicore Systems , 2011, 2011 IEEE 32nd Real-Time Systems Symposium.

[22]  Xingming Sun,et al.  Toward Efficient Multi-Keyword Fuzzy Search Over Encrypted Outsourced Data With Accuracy Improvement , 2016, IEEE Transactions on Information Forensics and Security.

[23]  Yale N. Patt,et al.  Utility-Based Cache Partitioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches , 2006, 2006 39th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO'06).

[24]  Todd M. Austin,et al.  The SimpleScalar tool set, version 2.0 , 1997, CARN.

[25]  Ann Gordon-Ross,et al.  Phase distance mapping: a phase-based cache tuning methodology for embedded systems , 2014, Design Automation for Embedded Systems.

[26]  Xingming Sun,et al.  Efficient algorithm for k-barrier coverage based on integer linear programming , 2016, China Communications.

[27]  Gang Chen,et al.  Reconfigurable cache for real-time MPSoCs: Scheduling and implementation , 2016, Microprocess. Microsystems.

[28]  Xingming Sun,et al.  Enabling Semantic Search Based on Conceptual Graphs over Encrypted Outsourced Data , 2019, IEEE Transactions on Services Computing.

[29]  Bo Hu,et al.  Everything as a Service (XaaS) on the Cloud: Origins, Current and Future Trends , 2015, 2015 IEEE 8th International Conference on Cloud Computing.