Optimizing Heap Data Management on Software Managed Manycore Architectures
abstract: Caches pose a serious limitation in scaling many-core architectures since the demand of area and power for maintaining cache coherence increases rapidly with the number of cores. Scratch-Pad Memories (SPMs) provide a cheaper and lower power alternative that can be used to build a more scal...
Other Authors: | |
---|---|
Format: | Dissertation |
Language: | English |
Published: |
2017
|
Subjects: | |
Online Access: | http://hdl.handle.net/2286/R.I.45507 |
id |
ndltd-asu.edu-item-45507 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-asu.edu-item-455072018-06-22T03:08:44Z Optimizing Heap Data Management on Software Managed Manycore Architectures abstract: Caches pose a serious limitation in scaling many-core architectures since the demand of area and power for maintaining cache coherence increases rapidly with the number of cores. Scratch-Pad Memories (SPMs) provide a cheaper and lower power alternative that can be used to build a more scalable many-core architecture. The trade-off of substituting SPMs for caches is however that the data must be explicitly managed in software. Heap management on SPM poses a major challenge due to the highly dynamic nature of of heap data access. Most existing heap management techniques implement a software caching scheme on SPM, emulating the behavior of hardware caches. The state-of-the-art heap management scheme implements a 4-way set-associative software cache on SPM for a single program running with one thread on one core. While the technique works correctly, it suffers from signifcant performance overhead. This paper presents a series of compiler-based efficient heap management approaches that reduces heap management overhead through several optimization techniques. Experimental results on benchmarks from MiBenchGuthaus et al. (2001) executed on an SMM processor modeled in gem5Binkert et al. (2011) demonstrate that our approach (implemented in llvm v3.8Lattner and Adve (2004)) can improve execution time by 80% on average compared to the previous state-of-the-art. Dissertation/Thesis Lin, Jinn-Pean (Author) Shrivastava, Aviral (Advisor) Ren, Fengbo (Committee member) Ogras, Umit (Committee member) Arizona State University (Publisher) Computer science Computer engineering Compiler Heap Memory Scratchpad eng 44 pages Masters Thesis Computer Science 2017 Masters Thesis http://hdl.handle.net/2286/R.I.45507 http://rightsstatements.org/vocab/InC/1.0/ All Rights Reserved 2017 |
collection |
NDLTD |
language |
English |
format |
Dissertation |
sources |
NDLTD |
topic |
Computer science Computer engineering Compiler Heap Memory Scratchpad |
spellingShingle |
Computer science Computer engineering Compiler Heap Memory Scratchpad Optimizing Heap Data Management on Software Managed Manycore Architectures |
description |
abstract: Caches pose a serious limitation in scaling many-core architectures since the demand of area and power for maintaining cache coherence increases rapidly with the number of cores. Scratch-Pad Memories (SPMs) provide a cheaper and lower power alternative that can be used to build a more scalable many-core architecture. The trade-off of substituting SPMs for caches is however that the data must be explicitly managed in software. Heap management on SPM poses a major challenge due to the highly dynamic nature of of heap data access. Most existing heap management techniques implement a software caching scheme on SPM, emulating the behavior of hardware caches. The state-of-the-art heap management scheme implements a 4-way set-associative software cache on SPM for a single program running with one thread on one core. While the technique works correctly, it suffers from signifcant performance overhead. This paper presents a series of compiler-based efficient heap management approaches that reduces heap management overhead through several optimization techniques. Experimental results on benchmarks from MiBenchGuthaus et al. (2001) executed on an SMM processor modeled in gem5Binkert et al. (2011) demonstrate that our approach (implemented in llvm v3.8Lattner and Adve (2004)) can improve execution time by 80% on average compared to the previous state-of-the-art. === Dissertation/Thesis === Masters Thesis Computer Science 2017 |
author2 |
Lin, Jinn-Pean (Author) |
author_facet |
Lin, Jinn-Pean (Author) |
title |
Optimizing Heap Data Management on Software Managed Manycore Architectures |
title_short |
Optimizing Heap Data Management on Software Managed Manycore Architectures |
title_full |
Optimizing Heap Data Management on Software Managed Manycore Architectures |
title_fullStr |
Optimizing Heap Data Management on Software Managed Manycore Architectures |
title_full_unstemmed |
Optimizing Heap Data Management on Software Managed Manycore Architectures |
title_sort |
optimizing heap data management on software managed manycore architectures |
publishDate |
2017 |
url |
http://hdl.handle.net/2286/R.I.45507 |
_version_ |
1718701559058006016 |