Efficient thread-to-core mapping alternatives for application-level redundant multithreading - ARSLAN YILMAZ, SANEM (My University, 2023)
© 2023 John Wiley & Sons, Ltd.Redundant multithreading (RMT) is an effective thread-level replication method to improve the reliability requirements of applications. Although it significantly improves the robustness of applications, it comes with additional performance overhead since the redundant threads might share the same core resources. In our previous study [Efficient selective replication of critical code regions for SDC mitigation leveraging redundant multithreading. J Supercomput 2021;77:14130-14160], we presented an efficient software-level RMT approach, where we execute the most critical code regions with three threads to correct errors. In this study, we focus on further improving the performance of our software-level RMT method by presenting a set of different thread-to-core mapping alternatives. We provide different static mapping methods, which require preliminary information about the applications, such as execution time, instruction-per-cycle (IPC), or cache usage patterns, and a set of dynamic mapping methods, which map threads to cores dynamically at runtime without requiring any additional information. The dynamic mapping methods decide which threads are mapped to which cores at each scheduling point based on the IPC, cache miss rate, or cache access values of each thread as well as each core. Experimental results show that the dynamic mapping method, which maps threads to cores based on IPC values, outperforms all other static and dynamic methods. It also outperforms our baseline model, where the operating system handles the thread-to-core mappings by 8%, 7%, and 20% based on average speedup, harmonic speedup, and mean slowdown metrics.
Keywords: Bilgi Sistemleri, Haberleşme ve Kontrol Mühendisliği; Bilgisayar Bilimleri; Biyoenformatik; Veritabanı ve Veri Yapıları; Matematik; Temel Bilimler; Mühendislik ve Teknoloji; Information Systems, Communication and Control Engineering; Computer Sciences; bioinformatics; Database and Data Structures; Mathematics; Computer Science; Natural Sciences; Engineering and Technology; Mühendislik, Bilişim ve Teknoloji (ENG); Temel Bilimler (SCI); Bilgisayar Bilimi; Mühendislik; BİLGİSAYAR BİLİMİ, TEORİ VE YÖNTEM; BİLGİSAYAR BİLİMİ, YAZILIM MÜHENDİSLİĞİ; TELEKOMÜNİKASYON; MATEMATİK, UYGULAMALI; Engineering, Computing & Technology (ENG); Natural Sciences (SCI); COMPUTER SCIENCE; ENGINEERING; MATHEMATICS; COMPUTER SCIENCE, THEORY & METHODS; COMPUTER SCIENCE, SOFTWARE ENGINEERING; TELECOMMUNICATIONS; MATHEMATICS, APPLIED; Teorik Bilgisayar Bilimi; Fizik Bilimleri; Yazılım; Bilgisayar Bilimi Uygulamaları; Bilgisayar Ağları ve İletişim; Hesaplamalı Teori ve Matematik; Theoretical Computer Science; Physical Sciences; Software; Computer Science Applications; Computer Networks and Communications; Computational Theory and Mathematics; performance evaluation; redundant multithreading; reliability; thread-to-core mapping