Abstract
Dynamic cache reconfiguration has been widely explored for energy optimization and performance improvement for single-core systems. Cache partitioning techniques are introduced for the shared cache in multicore systems to alleviate inter-core interference. While these techniques focus only on performance and energy, they ignore vulnerability due to soft errors. In this article, we present a static profiling based algorithm to enable vulnerability-aware energy-optimization for real-time multicore systems. Our approach can efficiently search the space of cache configurations and partitioning schemes for energy optimization while task deadlines and vulnerability constraints are satisfied. A machine learning technique has been employed to minimize the static profiling time without sacrificing the accuracy of results. Our experimental results demonstrate that our approach can achieve 19.2% average energy savings compared with the base configuration, while drastically reducing the vulnerability (49.3% on average) compared to state-of-the-art techniques. Furthermore, the machine learning technique enabled more than 10x speedup in static profiling time with a negligible prediction error of 3%.
- Statistics and Machine Learning Toolbox, Matlab. 2017b. MathWorks, Retrieved from https://www.mathworks.com/products/statistics.html.Google Scholar
- Tosiron Adegbija, Ann Gordon-Ross, and Arslan Munir. 2012. Dynamic phase-based tuning for embedded systems using phase distance mapping. In IEEE 30th International Conference on Computer Design (ICCD’12). IEEE, 284--290. Google Scholar
Digital Library
- G-H Asadi, V. S. Mehdi, B. Tahoori, and David Kaeli. 2005. Balancing performance and reliability in the memory hierarchy. In IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS’05). IEEE, 269--279. Google Scholar
Digital Library
- Nathan Binkert, Bradford Beckmann, Gabriel Black, Steven K. Reinhardt, Ali Saidi, Arkaprava Basu, Joel Hestness, Derek R. Hower, Tushar Krishna, Somayeh Sardashti, et al. 2011. The gem5 simulator. ACM SIGARCH Comput. Archit. News 39, 2 (2011), 1--7. Google Scholar
Digital Library
- Arijit Biswas, Paul Racunas, Razvan Cheveresan, Joel Emer, Shubhendu S. Mukherjee, and Ram Rangan. 2005. Computing architectural vulnerability factors for address-based structures. ACM SIGARCH Comput. Archit. News 33, 532--543. Google Scholar
Digital Library
- Yuan Cai, Marcus T. Schmitz, Alireza Ejlali, Bashir M. Al-Hashimi, and Sudhakar M. Reddy. 2006. Cache size selection for performance, energy and reliability of time-constrained systems. In 2006 Asia and South Pacific Design Automation Conference. IEEE Press, 923--928. Google Scholar
Digital Library
- Shounak Chakraborty and Hemangee K. Kapoor. 2016. Static energy reduction by performance linked dynamic cache resizing. In IFIP/IEEE International Conference on Very Large Scale Integration (VLSI-SoC’16). IEEE, 1--6.Google Scholar
- Timothy J. Dell. 1997. A white paper on the benefits of chipkill-correct ECC for PC server main memory. IBM Microelectronics Division 11 (1997).Google Scholar
- Ann Gordon-Ross and Frank Vahid. 2007. A self-tuning configurable cache. In Proceedings of the 44th Annual Design Automation Conference. ACM, 234--237. Google Scholar
Digital Library
- Matthew R. Guthaus, Jeffrey S. Ringenberg, Dan Ernst, Todd M. Austin, Trevor Mudge, and Richard B. Brown. 2001. MiBench: A free, commercially representative embedded benchmark suite. In IEEE International Workshop on Workload Characterization (WWC-4’01). IEEE, 3--14. Google Scholar
Digital Library
- Hadi Hajimiri, Prabhat Mishra, Swarup Bhunia, Branden Long, Yibo Li, and Rashmi Jha. 2013. Content-aware encoding for improving energy efficiency in multi-level cell resistive random access memory. In IEEE/ACM International Symposium on Nanoscale Architectures (NANOARCH’14). 76--81. Google Scholar
Digital Library
- Hadi Hajimiri, Kamran Rahmani, and Prabhat Mishra. 2011. Synergistic integration of dynamic cache reconfiguration and code compression in embedded systems. InInternational Green Computing Conference (IGCC’11). 1--8. Google Scholar
Digital Library
- Hadi Hajimiri and Prabhat Mishra. 2012. Intra-task dynamic cache reconfiguration. In 25th International Conference on VLSI Design (VLSID’12). IEEE, 430--435. Google Scholar
Digital Library
- John L. Henning. 2000. SPEC CPU2000: Measuring CPU performance in the new millennium. Computer 33, 7 (2000), 28--35. Google Scholar
Digital Library
- Po-Yang Hsu and TingTing Hwang. 2013. Thread-criticality aware dynamic cache reconfiguration in multi-core system. In International Conference on Computer-Aided Design. IEEE Press, 413--420. Google Scholar
Digital Library
- Hadi Hajimiri, Kamran Rahmani, and Prabhat Mishra. 2012. Compression-aware dynamic cache reconfiguration for embedded systems. Elsevier Sustainable Comput. Inf. Syst. 2, 2 (2012), 71--80.Google Scholar
Cross Ref
- Yuanwen Huang and Prabhat Mishra. 2011. Vulnerability-aware energy optimization for reconfigurable caches in multitasking systems. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. https://ieeexplore.ieee.org/document/8355959.Google Scholar
- Yuanwen Huang and Prabhat Mishra. 2016. Reliability and energy-aware cache reconfiguration for embedded systems. In 17th International Symposium on Quality Electronic Design (ISQED’16). IEEE, 313--318.Google Scholar
- Yuanwen Huang and Prabhat Mishra. 2017. Vulnerability-aware energy optimization using reconfigurable caches in multicore systems. In 2017 IEEE 35th International Conference on Computer Design (ICCD). IEEE, 241--248.Google Scholar
Cross Ref
- Reiley Jeyapaul and Aviral Shrivastava. 2011. Smart cache cleaning: Energy efficient vulnerability reduction in embedded processors. In 14th International Conference on Compilers, Architectures and Synthesis for Embedded Systems. ACM, 105--114. Google Scholar
Digital Library
- Dimitris Kaseridis, Jeffrey Stuecheli, and Lizy K. John. 2009. Bank-aware dynamic cache partitioning for multicore architectures. In International Conference on Parallel Processing (ICPP’09). IEEE, 18--25. Google Scholar
Digital Library
- Yohan Ko, Reiley Jeyapaul, Youngbin Kim, Kyoungwoo Lee, and Aviral Shrivastava. 2015. Guidelines to design parity protected write-back L1 data cache. In 52nd ACM/EDAC/IEEE Design Automation Conference (DAC’15). IEEE, 1--6. Google Scholar
Digital Library
- Yun Liang, Xiuhong Li, and Xiaolong Xie. 2017. Exploring cache bypassing and partitioning for multi-tasking on GPUs. In Proceedings of the 36th International Conference on Computer-Aided Design. IEEE Press, 9--16. Google Scholar
Digital Library
- Sparsh Mittal, Yanan Cao, and Zhao Zhang. 2014. Master: A multicore cache energy-saving technique using dynamic cache reconfiguration. IEEE Trans. Very Large Scale Integr. VLSI Syst. 22, 8 (2014), 1653--1665.Google Scholar
Cross Ref
- Sparsh Mittal and Jeffrey S. Vetter. 2016. A survey of techniques for modeling and improving reliability of computing systems. IEEE Trans. Parallel Distrib. Syst. 27, 4 (2016), 1226--1238. Google Scholar
Digital Library
- Shubhendu S. Mukherjee, Christopher Weaver, Joel Emer, Steven K. Reinhardt, and Todd Austin. 2003. A systematic methodology to compute the architectural vulnerability factors for a high-performance microprocessor. In Proceedings of the 36th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO’36). IEEE, 29--40. Google Scholar
Digital Library
- Xiaoke Qin and Prabhat Mishra. 2014. TECS: Temperature- and energy-constrained scheduling for multicore systems. International Conference on VLSI Design (VLSID’14). 216--221. Google Scholar
Digital Library
- Xiaoke Qin, Weixun Wang, and Prabhat Mishra. 2012. TCEC: Temperature- and energy-constrained scheduling in real-time multitasking systems. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 31, 8 (2012), 1159--1168. Google Scholar
Digital Library
- Soft Error Rates. 2002. Neutrons from above. Actel (2002).Google Scholar
- Kamran Rahmani, Prabhat Mishra, and Swarup Bhunia. 2012. Memory-based computing for performance and energy improvement in multicore architectures. ACM Great Lakes Symposium on VLSI (GLSVLSI’12). 287--290. Google Scholar
Digital Library
- Rakesh Reddy and Peter Petrov. 2010. Cache partitioning for energy-efficient and interference-free embedded multitasking. ACM Trans. Embedded Comput. Syst. (TECS) 9, 3 (2010), 16. Google Scholar
Digital Library
- Nathan N. Sadler and Daniel J. Sorin. 2007. Choosing an error protection scheme for a microprocessor’s L1 data cache. In International Conference on Computer Design (ICCD’06). IEEE, 499--505.Google Scholar
- Alex Settle, Dan Connors, Enric Gibert, and Antonio González. 2006. A dynamically reconfigurable cache for multithreaded processors. J. Embedded Comput. 2, 2 (2006), 221--233. Google Scholar
Digital Library
- Timothy Sherwood, Suleyman Sair, and Brad Calder. 2003. Phase tracking and prediction. In ACM SIGARCH Computer Architecture News, Vol. 31. ACM, 336--349. Google Scholar
Digital Library
- Vilas Sridharan, Hossein Asadi, Mehdi B. Tahoori, and David Kaeli. 2006. Reducing data cache susceptibility to soft errors. IEEE Trans. Dependable Secure Comput. 3, 4 (2006), 353--364. Google Scholar
Digital Library
- Vilas Sridharan and Dean Liberty. 2012. A study of DRAM failures in the field. In International Conference for High Performance Computing, Networking, Storage and Analysis (SC’12). IEEE, 1--11. Google Scholar
Digital Library
- Jinho Suh, Mehrtash Manoochehri, Murali Annavaram, and Michel Dubois. 2011. Soft error benchmarking of L2 caches with PARMA. ACM SIGMETRICS Perform. Eval. Rev. 39, 1 (2011), 85--96. Google Scholar
Digital Library
- Weixun Wang, Sanjay Ranka, and Prabhat Mishra. 2011. A general algorithm for energy-aware dynamic reconfiguration in multitasking systems. International Conference on VLSI Design (VLSID), 334--339. Google Scholar
Digital Library
- Weixun Wang, Prabhat Mishra, and Ann Gordon-Ross. 2009. SACR: Scheduling-aware cache reconfiguration for real-time embedded systems. International Conference on VLSI Design (VLSID), 547--552. Google Scholar
Digital Library
- Weixun Wang and Prabhat Mishra. 2010. Leakage-aware energy minimization using dynamic voltage scaling and cache reconfiguration in real-time systems. International Conference on VLSI Design (VLSID), 357--362. Google Scholar
Digital Library
- Weixun Wang and Prabhat Mishra. 2009. Dynamic reconfiguration of two-level caches in soft real-time embedded systems. In IEEE Computer Society Annual Symposium on VLSI (ISVLSI’09). IEEE, 145--150. Google Scholar
Digital Library
- Weixun Wang, Xiaoke Qin, and Prabhat Mishra. 2010. Temperature- and energy-constrained scheduling in multitasking systems: A model checking approach. In ACM/IEEE International Symposium on Low Power Electronics and Design (ISLPED), 85--90. Google Scholar
Digital Library
- Weixun Wang, Sanjay Ranka and Prabhat Mishra. 2011. Energy-aware dynamic reconfiguration algorithms for real-time multitasking systems. Elsevier Sustainable Comput. Inf. Syst. 1, 1 (2011), 35--45.Google Scholar
Cross Ref
- Weixun Wang and Prabhat Mishra. 2012. System-wide leakage-aware energy minimization using dynamic voltage scaling and cache reconfiguration in multitasking systems. IEEE Trans. Very Large Scale Integr. VLSI Syst. 20, 5 (2012), 902--910. Google Scholar
Digital Library
- Weixun Wang and Prabhat Mishra. 2011. Dynamic reconfiguration of two-level cache hierarchy in real-time embedded systems. J. Low Power Electron. 7, 1 (2011), 17--28.Google Scholar
Cross Ref
- Weixun Wang, Sanjay Ranka and Prabhat Mishra. 2011. Energy-aware dynamic slack allocation for real-time multitasking systems. Elsevier Sustainable Computing: Informatics and Systems (SUSCOM), 2, 3 (2012), 128--137.Google Scholar
Cross Ref
- Weixun Wang, Prabhat Mishra, and Ann Gordon-Ross. 2012. Dynamic cache reconfiguration for soft real-time systems. ACM Trans. Embedded Comput. Syst. 11, 2 (2012), 28. Google Scholar
Digital Library
- Weixun Wang, Prabhat Mishra, and Sanjay Ranka. 2011. Dynamic cache reconfiguration and partitioning for energy optimization in real-time multi-core systems. In Proceedings of the 48th Design Automation Conference. ACM, 948--953. Google Scholar
Digital Library
- Weixun Wang, Prabhat Mishra, and Sanjay Ranka. 2012. Dynamic Reconfiguration in Real-Time Systems. Springer. Google Scholar
Digital Library
- Chuanjun Zhang, Frank Vahid, and Walid Najjar. 2005. A highly configurable cache for low energy embedded systems. ACM Trans. Embedded Comput. Syst. 4, 2 (2005), 363--387. Google Scholar
Digital Library
- Wangyuan Zhang, Xin Fu, Tao Li, and José Fortes. 2007. An analysis of microarchitecture vulnerability to soft errors on simultaneous multithreaded architectures. In IEEE International Symposium on Performance Analysis of Systems 8 Software (ISPASS’07). IEEE, 169--178.Google Scholar
Cross Ref
Index Terms
Cache Reconfiguration Using Machine Learning for Vulnerability-aware Energy Optimization
Recommendations
Dynamic cache reconfiguration and partitioning for energy optimization in real-time multi-core systems
DAC '11: Proceedings of the 48th Design Automation ConferenceMulticore architectures, especially chip multi-processors, have been widely acknowledged as a successful design paradigm. Existing approaches primarily target application-driven partitioning of the shared cache to alleviate inter-core cache interference ...
Cache Management with Partitioning-Aware Eviction and Thread-Aware Insertion/Promotion Policy
ISPA '10: Proceedings of the International Symposium on Parallel and Distributed Processing with ApplicationsWith recent advances of processor technology, the LRU based shared last-level cache (LLC) has been widely employed in modern Chip Multi-processors (CMP). However, past research [1,2,8,9] indicates that the cache performance of the LLC and further of the ...
Bank-aware Dynamic Cache Partitioning for Multicore Architectures
ICPP '09: Proceedings of the 2009 International Conference on Parallel ProcessingAs Chip-Multiprocessor systems (CMP) have become the predominant topology for leading microprocessors, critical components of the system are now integrated on a single chip. This enables sharing of computation resources that was not previously possible. ...






Comments