Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems

Among the key challenges of computing today are the emergence of many-core architectures and the resulting need to effectively exploit explicit parallelism. Indeed, programmers are striving to exploit parallelism across virtually all platforms and application domains. The shared memory programming m...

Full description

Bibliographic Details
Main Author: Ramesh, Bharath
Other Authors: Computer Science
Format: Others
Published: Virginia Tech 2013
Subjects:
Online Access:http://hdl.handle.net/10919/23687
id ndltd-VTETD-oai-vtechworks.lib.vt.edu-10919-23687
record_format oai_dc
spelling ndltd-VTETD-oai-vtechworks.lib.vt.edu-10919-236872020-11-12T05:42:52Z Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems Ramesh, Bharath Computer Science Varadarajan, Srinidhi Ribbens, Calvin J. Jones, Mark T. Ramakrishnan, Naren Kafura, Dennis G. Distributed Shared Memory Virtual Shared Memory Memory Consistency Among the key challenges of computing today are the emergence of many-core architectures and the resulting need to effectively exploit explicit parallelism. Indeed, programmers are striving to exploit parallelism across virtually all platforms and application domains. The shared memory programming model effectively addresses the parallelism needs of mainstream computing (e.g., portable devices, laptops, desktop, servers), giving rise to a growing ecosystem of shared memory parallel techniques, tools, and design practices. However, to meet the extreme demands for processing and memory of critical problem domains, including scientific computation and data intensive computing, computing researchers continue to innovate in the high-end distributed memory architecture space to create cost-effective and scalable solutions. The emerging distributed memory architectures are both highly parallel and increasingly heterogeneous. As a result, they do not present the programmer with a cache-coherent view of shared memory, either across the entire system or even at the level of an individual node. Furthermore, it remains an open research question which programming model is best for the heterogeneous platforms that feature multiple traditional processors along with accelerators or co-processors. Hence, we have two contradicting trends. On the one hand, programming convenience and the presence of shared memory     call for a shared memory programming model across the entire heterogeneous system. On the other hand, increasingly parallel and heterogeneous nodes lacking cache-coherent shared memory call for a message passing model. In this dissertation, we present the architecture of Samhita, a distributed shared memory (DSM) system that addresses the challenge of providing shared memory for non-cache-coherent systems. We define regional consistency (RegC), the memory consistency model implemented by Samhita. We present performance results for Samhita on several computational kernels and benchmarks, on both cluster supercomputers and heterogeneous systems. The results demonstrate the promising potential of Samhita and the RegC model, and include the largest scale evaluation by a significant margin for any DSM system reported to date. Ph. D. 2013-08-06T08:00:20Z 2013-08-06T08:00:20Z 2013-08-05 Dissertation vt_gsexam:1413 http://hdl.handle.net/10919/23687 In Copyright http://rightsstatements.org/vocab/InC/1.0/ ETD application/pdf Virginia Tech
collection NDLTD
format Others
sources NDLTD
topic Distributed Shared Memory
Virtual Shared Memory
Memory Consistency
spellingShingle Distributed Shared Memory
Virtual Shared Memory
Memory Consistency
Ramesh, Bharath
Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems
description Among the key challenges of computing today are the emergence of many-core architectures and the resulting need to effectively exploit explicit parallelism. Indeed, programmers are striving to exploit parallelism across virtually all platforms and application domains. The shared memory programming model effectively addresses the parallelism needs of mainstream computing (e.g., portable devices, laptops, desktop, servers), giving rise to a growing ecosystem of shared memory parallel techniques, tools, and design practices. However, to meet the extreme demands for processing and memory of critical problem domains, including scientific computation and data intensive computing, computing researchers continue to innovate in the high-end distributed memory architecture space to create cost-effective and scalable solutions. The emerging distributed memory architectures are both highly parallel and increasingly heterogeneous. As a result, they do not present the programmer with a cache-coherent view of shared memory, either across the entire system or even at the level of an individual node. Furthermore, it remains an open research question which programming model is best for the heterogeneous platforms that feature multiple traditional processors along with accelerators or co-processors. Hence, we have two contradicting trends. On the one hand, programming convenience and the presence of shared memory     call for a shared memory programming model across the entire heterogeneous system. On the other hand, increasingly parallel and heterogeneous nodes lacking cache-coherent shared memory call for a message passing model. In this dissertation, we present the architecture of Samhita, a distributed shared memory (DSM) system that addresses the challenge of providing shared memory for non-cache-coherent systems. We define regional consistency (RegC), the memory consistency model implemented by Samhita. We present performance results for Samhita on several computational kernels and benchmarks, on both cluster supercomputers and heterogeneous systems. The results demonstrate the promising potential of Samhita and the RegC model, and include the largest scale evaluation by a significant margin for any DSM system reported to date. === Ph. D.
author2 Computer Science
author_facet Computer Science
Ramesh, Bharath
author Ramesh, Bharath
author_sort Ramesh, Bharath
title Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems
title_short Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems
title_full Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems
title_fullStr Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems
title_full_unstemmed Samhita: Virtual Shared Memory for Non-Cache-Coherent Systems
title_sort samhita: virtual shared memory for non-cache-coherent systems
publisher Virginia Tech
publishDate 2013
url http://hdl.handle.net/10919/23687
work_keys_str_mv AT rameshbharath samhitavirtualsharedmemoryfornoncachecoherentsystems
_version_ 1719356415217238016