Skip to content
Free planNo credit card requiredStart writing

Search 250 million research papers

Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.

About 1,196 papers for “software distributed shared memory”

Software transactional distributed shared memory

Alokika Dash, Brian Demsky · ACM SIGPLAN Notices · 2009

We have developed a transaction-based approach to distributed shared memory(DSM) that supports object caching and generates path expression prefetches. A path expression specifies a path through the heap that traverses the objects to be prefetched. To our knowledge, this is the first prefetching approach that can prefetch objects whose addresses have not been computed or predicted. Our DSM uses both prefetching and caching of remote objects to hide network latency while relying on the two-phase transaction commit mechanism to preserve the simple transactional consistency model that we present to the developer. We have evaluated this approach on a matrix multiply benchmark. We have found that our approach enables to effectively utilize multiple machines in a cluster and also benefit from prefetching and caching of objects.

Cited by 0

Region-based Software Distributed Shared Memory

Song Li, Yu‐Feng Lin, Michael Walker · 2000

In this paper, we describe the implementation of a software-based DSM model that supports variable-sized shard "regions", where a region is a logical page that can be adjusted according to the access patterns of the user program. Our project supports the multiple reader, single writer (MRWS) replication algorithm, and uses a least-recentlyused (LRU) region replacement model. We found that our DSM model can yield better performance that an equivalent RPC model of communication, and can also be easier to use. 1 Introduction Despite the advances in processor design, users still demand more performance. Eventually, single CPU technologies must give way to multiple processor parallel computers: it is less expensive to run 10 inexpensive processors cooperatively than it is to buy a new computer 10 times as fast. This change is inevitable, and has been realized to some extent in the specialization of subsystems like bus mastering drive controllers. However, the need for additional computati...

Cited by 2

High-Performance All-Software Distributed Shared Memory

Kirk L. Johnson · DSpace@MIT (Massachusetts Institute of Technology) · 1996

The C Region Library (CRL) is a new all-software distributed shared memory (DSM) system. CRL requires no special compiler, hardware, or operating system support beyond the ability to send and receive messages between processing nodes. It provides a simple, portable, region-based shared address space programming model that is capable of delivering good performance on a wide range of multiprocessor and distributed system architectures. Each region is an arbitrarily sized, contiguous area of memory. The programmer defines regions and delimits accesses to them using annotations. CRL implementations have been developed for two platforms: the Thinking Machines CM5, a commercial multicomputer, and the MIT Alewife machine, an experimental multiprocessor offering efficient hardware support for both message passing and shared memory. Results are presented for up to 128 processors on the CM-5 and up to 32 processors on Alewife. Using Alewife as a vehicle, this thesis presents results from the fir...

Cited by 17Open access

Adaptive Protocols for Software Distributed Shared Memory

Cristiana Amza Y, Alan L. Cox Y, Hya Dwarkadas Z et al. · 2008

We demonstrate the bene ts of software shared memory protocols that adapt at run-time to the memory access patterns observed in the applications. This adaptation is automatic | no user annotations are required | and does not rely on compiler support or special hardware. We investigate adaptation between single- and multiple-writer protocols, dynamic aggregation of pages into a larger transfer unit, and adaptation between invalidate and update. Our results indicate that adaptation between single- and multiple-writer and dynamic page aggregation are clearly bene cial. The results for the adaptation between invalidate and update are less compelling, showing at best gains similar to the dynamic aggregation adaptation and at worst serious performance deterioration. I.

Cited by 0

The Plight of Software Distributed Shared Memory

Kourosh Gharachorloo · 1999

While hardware shared-memory multiprocessors are enjoying tremendous acceptance and growth in the server market, software distributed shared-memory (DSM) systems have remained confined to a handful of research prototypes. Furthermore, the research in this area has in general failed to address the key shortcomings that have hindered the wider acceptance of software DSM. The goal of this short article is to clearly identify the typical shortcomings of software shared-memory systems, with the hope that this information will serve as a blueprint for a major revision of the research directions in this area. Metrics for Comparison The implicit premise we begin with is that software sharedmemory systems strive to provide a viable alternative to hardware systems. Therefore, the first step towards aligning our research goals to the realities of the marketplace is to use an appropriate set of metrics for comparing software shared-memory systems with hardware systems. While the three traditio...

Cited by 0

Lazy Release Consistency for Software Distributed Shared Memory

Cox, A.L., Keleher, P., Zwaenepoel, Willy · Infoscience (Ecole Polytechnique Fédérale de Lausanne) · 1992

Release consistency, a relaxed memory consistency model that reduces the impact of remote memory access latency in both software and hardware distributed shared memory, is considered. To reduce the number of messages and the amount of data exchanged for remote memory access, a lazy release consistency algorithm is introduced. It pulls modifications across the interconnect only when necessary. Trace-driven simulation using the SPLASH benchmarks indicates that lazy release consistency reduces both the number of messages and the amount of data transferred between processors. These reductions are especially significant for programs that exhibit false sharing and make extensive use of locks.

Cited by 0Open access

SciOS: An SCI-based Software Distributed Shared Memory

Povl T. Koch, Jørgen S. Hansen, Emmanuel Cecchet et al. · 1999

New memory-mapped network technologies allow highly efficient implementation of software distributed shared memory (DSM) systems. Off-the-shelf SCI cluster adapters provide processors with direct access to remote memory and better performance than traditional network interfaces. We believe that it allows simpler DSM implementations that may deal with fine-grained sharing and multiple-writers efficiently without the overhead of complex DSM protocols. We present the SciOS prototype and its implementation of a DSM protocol that deals with fine-grained sharing and global memory management. 1 Introduction A bottleneck for many distributed shared memory systems is the high cost of communication on traditional network interfaces. Memory-mapped network interfaces, such as I/O-based SCI adapters, provide latencies of a few microseconds and bandwidths close to the maximum of the local I/O bus. Data is transferred directly between memories without involving the operating system, thereby induci...

Cited by 0

Lazy Release Consistency for Software Distributed Shared Memory

Peter J. Keleher, Anna L. Cox, Willy Zwaenepoel · Infoscience (Ecole Polytechnique Fédérale de Lausanne) · 2005

Relaxed memory consistency models, such as release consistency, were introduced in order to reduce the impact of re mote memory access latency in both software and hardware distributed shared memory (DSM). However, in a software DSM, it is also important to reduce the number of messages and the amount of data exchanged for remote memory access. Lazy release consistency is a new algorithm for implementing release consistency that lazily pulls modifications across the interconnect only when necessary. Trace- driven simulation using the SPLASH benchmarks indicates that lazy release consistency reduces both the number of messages and the amount of data transferred between processors. These reductions are especially significant for pro- grams that exhibit false sharing and make extensive use of locks.

Cited by 202Open access

Written Preliminary Exam II: Software Distributed Shared Memory

Aaron J. Marks · 2001

This paper presents a comparison of four software distributed shared memory systems, namely TreadMarks[1], OpenMP/SMP[6], Cashmere-2L[15] and Shasta[14]. We compare and contrast them within the context of a taxonomy which we feel is appropriate to model software distributed shared memory systems. We present this taxonomy after a brief definition of a SDSM. This is followed by descriptions of the four systems. We close the paper with a discussion and conclusion

Cited by 0

Migrating-home protocol for software distributed shared memory

Lau, FCM, Cheung, BWL, Wang, CL · The HKU Scholars Hub (University of Hong Kong) · 2010

The efficiency of Software Distributed Shared Memory (DSM) is often limited by the excessive amount of network communication in maintaining the memory consistency of the system. Two of the most popular software solutions to reduce redundant data traffic are relaxed memory consistency models and traffic-thrifty coherence protocols. In this paper, we propose the migrating-home protocol for a relaxed memory consistency model, the scope consistency model. The protocol allows the processor storing the most up-to-date copy of a page to change from one processor to another, so as to better adapt to the memory access patterns of DSM applications. The new protocol has been implemented in a DSM system running on a 16-node Pentium III 450MHz PC cluster. We analyzed not only the execution time of the benchmark programs, but also the communication and page fault patterns via a new analysis approach. It is shown that our DSM system reduces the amount of network communication and handles page faults more efficiently. The benchmark results provide concrete evidence for the substantial performance improvement obtained by our system.

Cited by 0

Implementation of Software Distributed Shared Memory in Linux

Lei Wang · 2006

The purpose of distributed shared memory is to build up shared memory model logically on distributed memory.This paper proposes a framework that implementing distributed shared memory in the operating system based on Linux.It provides a simple programming interface that does not require any network programming,and extends the Linux VM system in a non-intrusive way.By using proper consistency protocol,the system performance gets improved.

Cited by 0

Aggressive release consistency for software distributed shared memory

S.S. Fu, Nian-Feng Tzeng · 2002

As a software-based distributed shared memory (DSM) system is especially sensitive to the traffic amount over the network, we propose a new software DSM model. The model postpones the enforcement of data coherence at the time of the first shared memory access after an acquire, instead of at the time of the acquire like the lazy release consistency (LRC) model. This leads to an aggressive implementation of release consistency and thus a reduced number of messages transferred over the network when compared with LRC. Our model is evaluated on the basis of the TreadMarks framework using three applications, where TreadMarks is a software DSM implementation following LRC. The experimental results on a network of workstations indicate that our model leads to fewer messages transmitted across the network than LRC, by over 16% for one application and over 12% for the other two.

Cited by 2

JIACKPT: A Recoverable Software Distributed Shared Memory System

Fuxin Zhang · Journal of Software · 2005

Software distributed shared memory (DSM) system has constructed a virtual shared memory abstract on cluster, which combines the programmability of shared memory and fine scalability of cluster. So it is widely studied. Software DSM system is easy to fail because it is a distributed system, some kinds of fault tolerance are necessary for it to be more practical. A recoverable and portable software DSM system, JIACKPT (JIAjia with ChecKPoinTing), has been designed and implemented to tolerate the fault of system. JIACKPT, based on JIAJIA, has adopted the checkpointing technology. By maintaining the strict global consistent state and using some optimization techniques, JIACKPT has gotten high performance. The experimental results on an 8-node PC cluster show that the checkpoint overhead is less than 10% of the whole execution time when checkpoint is done once per minute. JIACKPT also has good portability and can run on several operating systems, such as Linux, Solaris, etc.

Cited by 0

OpenMP on the FDSM software distributed shared memory

Hiroya Matsuba, Yutaka Ishikawa · 2003

This paper describes an OpenMP ready distributed shared memory system called FDSM. FDSM analyzes the access pattern to the shared memory at the first itera-tion of a loop and obtain the communication set. By using this information, it reduces the overhead of the coherence maintenance. OpenMP on FDSM is evaluated by using the benchmark application CG in the NAS parallel benchmark and compared with another DSM system. The benchmark result shows FDSM runs 40 % to 80 % faster than another DSM system and 70 % to 90 % slower than the same benchmark written in MPI. 1

Cited by 0

PERFORMANCE OPTIMIZATION OF SOFTWARE DISTRIBUTED SHARED MEMORY SYSTEMS

Weisong Shi · 2008

Software Distributed Shared Memory Systems (DSMs, or Shared Virtual Memory) are advocated to be an ideal vehicle for parallel programming because of its combination of programmability of shared memory and scalability of distributed memory systems. The challenge in building a software DSM system is to achieve good performance over a wide range of parallel programs without requiring programmers to restructure their shared memory parallel programs or less modification to their sequential programs. The overhead of maintaining consistency in software and the high latency of sending messages make this target difficult to achieve. In this dissertation, we try to improve the performance of software DSM system by examining cache coherence protocol, memory organization scheme, system overhead, load balancing, and communication optimization respectively. By analyzing the disadvantages of snoopy and directory-based cache coherence protocol, we propose a lock-based cache coherence protocol for scope consistency. The unique characteristic of this protocol is applying the “home ” concept to not only data information but also coherence information. Each coherence information has a static home according to the corresponding synchronization

Cited by 0

ViSMI: software distributed shared memory for infiniband clusters

Christian Osendorfer, Jie Tao, Carsten Trinitis et al. · 2004

This work describes ViSMI, a software distributed shared memory system for cluster systems connected via InfiniBand. ViSMI implements a kind of home-based lazy release consistency protocol, which uses a multiple-writer coherence scheme to alleviate the traffic introduced by false sharing. For further performance gain, InfiniBand features and optimized page invalidation mechanisms are applied in order to reduce synchronization overhead. First experimental results show that ViSMI introduces good performance comparable to similar software DSMs.

Cited by 6

Load Balancing in Software Distributed Shared Memory Systems

An-chow Lai, Ce-kuen Shieh, Jyh-chang Ueng et al. · 1997

This paper describes the load imbalance phenomenon arising in Distributed Shared Memory ( DSM ) systems and introduces a feasible solution to tackle it. Despite of the fast evolution in DSM systems, load balance problem has not received much attention. However, the cognizance of it would bring us a significant improvement in system performance because there are a number of reasons generating load imbalance during execution which cannot be overlooked. For examples, uneven domain decomposition, dynamically load distribution of the program, equal subregion partitioning on each processor with different computation algorithm and time, underlying system based on a number of workstations with same architecture but of different speed, etc. To handle this situation, we proposed a load balancing method called Dependency-Driven Load Balancing that is eligible for multithreaded DSM systems. This method embraces three policies, i.e. transfer policy, location policy and selection policy. The latter ...

Cited by 0

CRL: High - Performance All-Software Distributed Shared Memory*

Kirk L. Johnson, M. Frans Kaashoek, Deborah A. Wallach · DSpace@MIT (Massachusetts Institute of Technology) · 1995

The CRegion Library (CRL) is a new all-software distributed shared memory (DSM) system. CRL requires no special compiler, hardware, or operating system support beyond the ability to send and receive messages. It provides a simple, portable, region-based shared address space programming model that is capable of delivering good performance on a wide range of multiprocessor and distributed system architectures. Each region is an arbitrarily sized, contiguous area of memory. The programmer defines regions and delimits accesses to them using annotations. We have developed CRL implementations for two platforms: the Thinking Machines CM-5, a commercial multicomputer, and the MIT Alewife machine, an experimental multiprocessor offering efficient support for both message passing and shared memory. We present results for up to 128 processors on the CM-5 and up to 32 processors on Alewife. In a set of controlled experiments, we demonstrate that CRL is the first all-software DSM system capable of ...

Cited by 10Open access

Towards transparent and efficient software distributed shared memory

Daniel J. Scales, Kourosh Gharachorloo · 1997

Despite a large research effort, software distributed shared memory systems have not been widely used to run parallel applications across clusters of computers. The higher performance of hardware multiprocessors makes them the preferred platform for developing and executing applications. In addition, most applications are distributed only in binary format for a handful of popular hardware systems. Due to their limited functionality, software systems cannot directly execute the applications developed for hardware platforms. We have developed a system called Shasta that attempts to address the issues of efficiency and transparency that have hindered wider acceptanceof software systems. Shastais adistributedsharedmemory system that supports coherence at a fine granularity in software and can efficiently exploit small-scale SMP nodes by allowing processes on the same node to share data at hardware speeds.

Cited by 49Open access