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...
Main Authors: | , |
---|---|
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 |