Proactive Thermal Management using Memory-based Computing in Multicore Architectures

Reliability is a major concern in modern electronic systems due to high defect rates and large parametric variations. A major contributor to reliability concerns is the potential thermal violations due to increasing transistor count coupled with the high clock rate in multicore System-on-Chip (SoC) designs. Dynamic thermal management is widely used to reduce the SoC temperature. Early work on using memory-based computing has shown promising results in improving SoC reliability when few functional units are defective or unreliable under process-induced or thermal variations. However, there are no prior efforts to explore the effectiveness of MBC for thermal management in multicore architectures. In this paper, we present a novel dynamic thermal management technique using proactive memory-based computing to reduce the peak temperature of applications in multicore architectures. The basic idea is to proactively transfer the profitable instructions with frequent operand pairs to memory. Experimental results demonstrate that the proposed computing in memory can significantly decrease the peak temperature to improve the SoC reliability with minor impact on performance.

[1]  Kamran Rahmani,et al.  Compression-aware dynamic cache reconfiguration for embedded systems , 2012, Sustain. Comput. Informatics Syst..

[2]  Kevin Skadron,et al.  Temperature-aware microarchitecture , 2003, ISCA '03.

[3]  Shekhar Y. Borkar,et al.  Designing reliable systems from unreliable components: the challenges of transistor variability and degradation , 2005, IEEE Micro.

[4]  A. J. KleinOsowski,et al.  MinneSPEC: A New SPEC Benchmark Workload for Simulation-Based Computer Architecture Research , 2002, IEEE Computer Architecture Letters.

[5]  Jung Ho Ahn,et al.  McPAT: An integrated power, area, and timing modeling framework for multicore and manycore architectures , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[6]  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.

[7]  Antonio González,et al.  A dynamically reconfigurable cache for multithreaded processors , 2006, J. Embed. Comput..

[8]  Tajana Rosing,et al.  Proactive temperature balancing for low cost thermal management in MPSoCs , 2008, ICCAD 2008.

[9]  Prabhat Mishra,et al.  Reliability and energy-aware cache reconfiguration for embedded systems , 2016, 2016 17th International Symposium on Quality Electronic Design (ISQED).

[10]  Weixun Wang,et al.  System-Wide Leakage-Aware Energy Minimization Using Dynamic Voltage Scaling and Cache Reconfiguration in Multitasking Systems , 2012, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[11]  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).

[12]  Ümit Y. Ogras,et al.  Exploration of Memory and Cluster Modes in Directory-Based Many-Core CMPs , 2018, 2018 Twelfth IEEE/ACM International Symposium on Networks-on-Chip (NOCS).

[13]  John L. Henning SPEC CPU2000: Measuring CPU Performance in the New Millennium , 2000, Computer.

[14]  Weixun Wang,et al.  PreDVS: Preemptive dynamic voltage scaling for real-time systems using approximation scheme , 2010, Design Automation Conference.

[15]  Kevin Skadron,et al.  Recent thermal management techniques for microprocessors , 2012, CSUR.

[16]  Sherief Reda,et al.  Consistent runtime thermal prediction and control through workload phase detection , 2010, Design Automation Conference.

[17]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[18]  Margaret Martonosi,et al.  Dynamic thermal management for high-performance microprocessors , 2001, Proceedings HPCA Seventh International Symposium on High-Performance Computer Architecture.

[19]  Prabhat Mishra,et al.  Vulnerability-Aware Energy Optimization for Reconfigurable Caches in Multitasking Systems , 2019, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[20]  Somayeh Sardashti,et al.  The gem5 simulator , 2011, CARN.

[21]  Weixun Wang,et al.  TCEC: Temperature and Energy-Constrained Scheduling in Real-Time Multitasking Systems , 2012, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[22]  Sanjay Ranka,et al.  Energy-aware dynamic reconfiguration algorithms for real-time multitasking systems , 2011, Sustain. Comput. Informatics Syst..

[23]  Massoud Pedram,et al.  Stochastic Dynamic Thermal Management: A Markovian Decision-based Approach , 2006, 2006 International Conference on Computer Design.

[24]  Mimonah Al Qathrady,et al.  Proactive thermal management using memory based computing , 2013, 2013 IEEE/ACM International Symposium on Nanoscale Architectures (NANOARCH).

[25]  Tulika Mitra,et al.  Dynamic thermal management via architectural adaptation , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[26]  Weixun Wang,et al.  Dynamic Reconfiguration of Two-Level Cache Hierarchy in Real-Time Embedded Systems , 2011, J. Low Power Electron..

[27]  Prabhat Mishra,et al.  A Survey of Side-Channel Attacks on Caches and Countermeasures , 2017, Journal of Hardware and Systems Security.