Please use this identifier to cite or link to this item: https://hdl.handle.net/11147/7581
Title: Locality-aware task scheduling for homogeneous parallel computing systems
Authors: Bhatti, Muhammad Khurram
Öz, Işıl
Amin, Sarah
Mushtaq, Maria
Farooq, Umer
Popov, Konstantin
Brorsson, Mats
Keywords: Directed acyclic graph
Embedded systems
Homogeneous systems
Multicore scheduling
Parallel computing
Publisher: Springer Verlag
Source: Bhatti, M. K., Öz, I., Amin, S., Mushtaq, M., Farooq, U., Popov, K., and Brorsson, M. (2018). Locality-aware task scheduling for homogeneous parallel computing systems. Computing, 100(6), 557-595. doi:10.1007/s00607-017-0581-6
Abstract: In systems with complex many-core cache hierarchy, exploiting data locality can significantly reduce execution time and energy consumption of parallel applications. Locality can be exploited at various hardware and software layers. For instance, by implementing private and shared caches in a multi-level fashion, recent hardware designs are already optimised for locality. However, this would all be useless if the software scheduling does not cast the execution in a manner that promotes locality available in the programs themselves. Since programs for parallel systems consist of tasks executed simultaneously, task scheduling becomes crucial for the performance in multi-level cache architectures. This paper presents a heuristic algorithm for homogeneous multi-core systems called locality-aware task scheduling (LeTS). The LeTS heuristic is a work-conserving algorithm that takes into account both locality and load balancing in order to reduce the execution time of target applications. The working principle of LeTS is based on two distinctive phases, namely; working task group formation phase (WTG-FP) and working task group ordering phase (WTG-OP). The WTG-FP forms groups of tasks in order to capture data reuse across tasks while the WTG-OP determines an optimal order of execution for task groups that minimizes the reuse distance of shared data between tasks. We have performed experiments using randomly generated task graphs by varying three major performance parameters, namely: (1) communication to computation ratio (CCR) between 0.1 and 1.0, (2) application size, i.e., task graphs comprising of 50-, 100-, and 300-tasks per graph, and (3) number of cores with 2-, 4-, 8-, and 16-cores execution scenarios. We have also performed experiments using selected real-world applications. The LeTS heuristic reduces overall execution time of applications by exploiting inter-task data locality. Results show that LeTS outperforms state-of-the-art algorithms in amortizing inter-task communication cost.
URI: https://doi.org/10.1007/s00607-017-0581-6
https://hdl.handle.net/11147/7581
ISSN: 0010-485X
0010-485X
Appears in Collections:Computer Engineering / Bilgisayar Mühendisliği
Scopus İndeksli Yayınlar Koleksiyonu / Scopus Indexed Publications Collection
WoS İndeksli Yayınlar Koleksiyonu / WoS Indexed Publications Collection

Files in This Item:
File Description SizeFormat 
7581.pdfMakale (Article)9.15 MBAdobe PDFThumbnail
View/Open
Show full item record



CORE Recommender

SCOPUSTM   
Citations

10
checked on Mar 22, 2024

WEB OF SCIENCETM
Citations

6
checked on Mar 27, 2024

Page view(s)

564
checked on Mar 25, 2024

Download(s)

158
checked on Mar 25, 2024

Google ScholarTM

Check




Altmetric


Items in GCRIS Repository are protected by copyright, with all rights reserved, unless otherwise indicated.