Cache-aware task scheduling for multi-core architectures

碩士 === 國立臺灣大學 === 資訊工程學研究所 === 97 === As the technology shrink and the increasing of the number of transistors on a single chip, multi-core processors have become major implementations to build high-performance processors. In multi-core processors, the processing cores may have separate private cach...

Full description

Bibliographic Details
Main Authors: Teng-Feng Yang, 楊登峰
Other Authors: 楊佳玲
Format: Others
Language:en_US
Online Access:http://ndltd.ncl.edu.tw/handle/78163987691432090294
id ndltd-TW-097NTU05392088
record_format oai_dc
spelling ndltd-TW-097NTU053920882016-05-04T04:31:49Z http://ndltd.ncl.edu.tw/handle/78163987691432090294 Cache-aware task scheduling for multi-core architectures 多核心平台上之考慮快取記憶體之工作排程策略 Teng-Feng Yang 楊登峰 碩士 國立臺灣大學 資訊工程學研究所 97 As the technology shrink and the increasing of the number of transistors on a single chip, multi-core processors have become major implementations to build high-performance processors. In multi-core processors, the processing cores may have separate private caches and/or share a large common cache. Since the system performance highly depends on the cache utilization, the data access pattern should be optimized to improve performance. A good task scheduling is an effective way to optimize data access pattern. However, the cache organizations of multi-core systems are quite complex and it is hard to optimize the scheduling manually. Therefore, a good tool is required. In this paper, we try to minimize capacity and coherence misses through affinity improvement, footprint reduction and coherence traffic minimization. We propose a scheduling policy which integrates these techniques to reduce cache misses effectively. We also implement the policy in the scheduler of a parallel programming model, Thread Building Blocks(TBB). Programmers can specify the footprint and sharing group of each task through API provided by TBB easily, and the scheduler would optimize the cache utilization accordingly. We believe that this tool can ease the programming complexity by hiding the details for cache utilization optimization to provide high performance. 楊佳玲 學位論文 ; thesis 62 en_US
collection NDLTD
language en_US
format Others
sources NDLTD
description 碩士 === 國立臺灣大學 === 資訊工程學研究所 === 97 === As the technology shrink and the increasing of the number of transistors on a single chip, multi-core processors have become major implementations to build high-performance processors. In multi-core processors, the processing cores may have separate private caches and/or share a large common cache. Since the system performance highly depends on the cache utilization, the data access pattern should be optimized to improve performance. A good task scheduling is an effective way to optimize data access pattern. However, the cache organizations of multi-core systems are quite complex and it is hard to optimize the scheduling manually. Therefore, a good tool is required. In this paper, we try to minimize capacity and coherence misses through affinity improvement, footprint reduction and coherence traffic minimization. We propose a scheduling policy which integrates these techniques to reduce cache misses effectively. We also implement the policy in the scheduler of a parallel programming model, Thread Building Blocks(TBB). Programmers can specify the footprint and sharing group of each task through API provided by TBB easily, and the scheduler would optimize the cache utilization accordingly. We believe that this tool can ease the programming complexity by hiding the details for cache utilization optimization to provide high performance.
author2 楊佳玲
author_facet 楊佳玲
Teng-Feng Yang
楊登峰
author Teng-Feng Yang
楊登峰
spellingShingle Teng-Feng Yang
楊登峰
Cache-aware task scheduling for multi-core architectures
author_sort Teng-Feng Yang
title Cache-aware task scheduling for multi-core architectures
title_short Cache-aware task scheduling for multi-core architectures
title_full Cache-aware task scheduling for multi-core architectures
title_fullStr Cache-aware task scheduling for multi-core architectures
title_full_unstemmed Cache-aware task scheduling for multi-core architectures
title_sort cache-aware task scheduling for multi-core architectures
url http://ndltd.ncl.edu.tw/handle/78163987691432090294
work_keys_str_mv AT tengfengyang cacheawaretaskschedulingformulticorearchitectures
AT yángdēngfēng cacheawaretaskschedulingformulticorearchitectures
AT tengfengyang duōhéxīnpíngtáishàngzhīkǎolǜkuàiqǔjìyìtǐzhīgōngzuòpáichéngcèlüè
AT yángdēngfēng duōhéxīnpíngtáishàngzhīkǎolǜkuàiqǔjìyìtǐzhīgōngzuòpáichéngcèlüè
_version_ 1718259921127997440