Formal Verification of Distributed Task Migration for Thermal Management in On-Chip Multi-core Systems Using nuXmv

With the growing interest in using distributed task migration algorithms for dynamic thermal management (DTM) in multi-core chips comes the challenge of their rigorous verification. Traditional analysis techniques, like simulation and emulation, cannot cope with the design complexity and distributed nature of such algorithms and thus compromise on the rigor and accuracy of the analysis results. Formal methods, especially model checking, can play a vital role in alleviating these issues. Due to the presence of continuous elements, such as temperatures, and the large number of cores running the distributed algorithms in this analysis, we propose to use the nuXmv model checker to analyze distributed task migration algorithms for DTM. The main motivations behind this choice include the ability to handle the \(real\) numbers and the scalable SMT-based bounded model checking capabilities in nuXmv that perfectly fit the stability and deadlock analysis requirements of the distributed DTM algorithms. The paper presents the detailed analysis of a state-of-the-art task migration algorithm of distributed DTM for many-core systems. The functional and timing verification is done on a larger grid size of \(9\times 9\) cores, which is thermally managed by the selected DTM approach. The results indicate the usefulness of the proposed approach, as we have been able to catch a couple of discrepancies in the original model and gain many new insights about the behavior of the algorithm.

[1]  Claudio Fiocchi,et al.  Falk Symposium Series , 2009, Digestive Diseases.

[2]  Marek Chrobak,et al.  Dynamic Thermal Management through Task Scheduling , 2008, ISPASS 2008 - IEEE International Symposium on Performance Analysis of Systems and software.

[3]  Jörg Henkel,et al.  Economic learning for thermal-aware power budgeting in many-core architectures , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[4]  Amit Kumar Singh,et al.  Mapping on multi/many-core systems: Survey of current and emerging trends , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[5]  Bryan Schauer Multicore Processors - A Necessity , 2008 .

[6]  Jörg Henkel,et al.  TAPE: thermal-aware agent-based power economy for multi/many-core architectures , 2009, ICCAD '09.

[7]  Jorg Henkel,et al.  Agent-based distributed power management for kilo-core processors , 2013, ICCAD.

[8]  Seda Ogrenci Memik,et al.  Physical aware frequency selection for dynamic thermal management in multi-core systems , 2006, ICCAD.

[9]  Heba Khdr,et al.  mDTM: Multi-objective dynamic thermal management for on-chip systems , 2014, 2014 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[10]  Tajana Simunic,et al.  Power modeling and thermal management techniques for manycores , 2013, 2013 IEEE Symposium on Computers and Communications (ISCC).

[11]  Sheldon X.-D. Tan,et al.  Distributed task migration for thermal hot spot reduction in many-core microprocessors , 2013, 2013 IEEE 10th International Conference on ASIC.

[12]  Doris Schmitt-Landsiedel,et al.  Modeling of temperature scenarios in a multicore processor system , 2013 .

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

[14]  Yongcan Cao,et al.  Distributed Average Tracking of Multiple Time-Varying Reference Signals With Bounded Derivatives , 2012, IEEE Transactions on Automatic Control.

[15]  Sandeep K. Shukla,et al.  Using probabilistic model checking for dynamic power management , 2005, Formal Aspects of Computing.

[16]  Leslie Lamport,et al.  Time, clocks, and the ordering of events in a distributed system , 1978, CACM.

[17]  Hamid Noori,et al.  An adaptive temperature threshold schema for dynamic thermal management of multi-core processors , 2013, The 17th CSI International Symposium on Computer Architecture & Digital Systems (CADS 2013).

[18]  Petra Funk,et al.  Multiagentsystems - A Modern Approach to Distributed Artificial Intelligence , 2000, Künstliche Intell..

[19]  Gerard J. Holzmann,et al.  The Model Checker SPIN , 1997, IEEE Trans. Software Eng..

[20]  Margaret Martonosi,et al.  Techniques for Multicore Thermal Management: Classification and New Exploration , 2006, 33rd International Symposium on Computer Architecture (ISCA'06).

[21]  Heba Khdr,et al.  Thermal management for dependable on-chip systems , 2013, 2013 18th Asia and South Pacific Design Automation Conference (ASP-DAC).

[22]  Jörg Henkel,et al.  TAPE: Thermal-aware agent-based power econom multi/many-core architectures , 2009, 2009 IEEE/ACM International Conference on Computer-Aided Design - Digest of Technical Papers.

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

[24]  Sheldon X.-D. Tan,et al.  Dynamic thermal management for multi-core microprocessors considering transient thermal effects , 2013, 2013 18th Asia and South Pacific Design Automation Conference (ASP-DAC).

[25]  Pradip Bose,et al.  Multicore power management: Ensuring robustness via early-stage formal verification , 2009, 2009 7th IEEE/ACM International Conference on Formal Methods and Models for Co-Design.

[26]  Qinru Qiu,et al.  Distributed task migration for thermal management in many-core systems , 2010, Design Automation Conference.

[27]  Rolf Drechsler,et al.  Advanced Formal Verification , 2004 .

[28]  Marco Roveri,et al.  The nuXmv Symbolic Model Checker , 2014, CAV.

[29]  Gerhard Weiss,et al.  Multiagent systems: a modern approach to distributed artificial intelligence , 1999 .

[30]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[31]  Kang G. Shin,et al.  Predicting thermal behavior for temperature management in time-critical multicore systems , 2013, 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS).

[32]  Augustus K. Uht,et al.  Central vs. distributed dynamic thermal management for multi-core processors: which one is better? , 2009, GLSVLSI '09.

[33]  Sandeep K. Shukla,et al.  A model checking approach to evaluating system level dynamic power management policies for embedded systems , 2001, Sixth IEEE International High-Level Design Validation and Test Workshop.

[34]  Yongcan Cao,et al.  Distributed computation of the average of multiple time-varying reference signals , 2011, Proceedings of the 2011 American Control Conference.

[35]  Michael R. Inggs,et al.  Towards a many-core architecture for HPC , 2013, 2013 23rd International Conference on Field programmable Logic and Applications.

[36]  Muhammad Shafique,et al.  Formal verification of distributed dynamic thermal management , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).