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...

Full description

Bibliographic Details
Other Authors: Lin, Jinn-Pean (Author)
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