A Threaded DSM Based On Adsmith
碩士 === 國立清華大學 === 資訊科學研究所 === 85 === In cluster computing, a collection of computers are interconnected through networks to be used as a concurrent computation engine. As the performance of computers advances and the use of networks is widely spreading, cluster computing is becoming an affordable...
Main Author: | |
---|---|
Other Authors: | |
Format: | Others |
Language: | en_US |
Published: |
1997
|
Online Access: | http://ndltd.ncl.edu.tw/handle/53474878423196151079 |
id |
ndltd-TW-085NTHU3394009 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TW-085NTHU33940092015-10-13T18:05:33Z http://ndltd.ncl.edu.tw/handle/53474878423196151079 A Threaded DSM Based On Adsmith 以Adsmith為基礎的多緒分散式共享計憶體 留智文 碩士 國立清華大學 資訊科學研究所 85 In cluster computing, a collection of computers are interconnected through networks to be used as a concurrent computation engine. As the performance of computers advances and the use of networks is widely spreading, cluster computing is becoming an affordable and powerful platform for distributed memory parallel processing. Message passing is usually used to communicate between computer nodes in cluster computing. Unfortunately, programming with message passing is error-prone, tedious and hard to debug. A distributed shared memory (DSM) system provides users a logical global shared memory abstraction on top of the distributed memory cluster. It releases programmers from the burden of taking care of data flows and allocation explicitly. A major drawback with the cluster computing approach is the high communication overhead incurred in the system software and in the interconnection networks. Unfortunately, typical communications in parallel programs transmit frequent but short messages. It is very difficult to execute these programs efficiently on cluster ocmputing environments. One solution is to hide the long communication overhead by overlapping computation with communication. Multithreading is one of the best candidates for this purpose. We have implemented a thread-based DSM called Adsmith+. Adsmith+ was developed by integrating Adsmith, a DSM system built on top of PVM, with Pthread. Through PVM and Pthread, Adsmith+ is very portable and it supports efficient parallel programming through the overlap between computation and communication. Unfortunately, PVM and Adsmith are not thread safe. To support multithread applications, we must address the reentrance problem, message buffering and dispatching, and other related issues. In this thesis, we will examine the issues caused by the extension of an existing DSM to a multithreaded system, and introduce our solutions. Implementation details of Adsmith+ will be described. Preliminary performance results show that Adsmith+ is able to hide the latency of communication and improve program performance. Tang, Chuan-Yi 金仲達 1997 學位論文 ; thesis 42 en_US |
collection |
NDLTD |
language |
en_US |
format |
Others
|
sources |
NDLTD |
description |
碩士 === 國立清華大學 === 資訊科學研究所 === 85 ===
In cluster computing, a collection of computers are interconnected through networks to be used as a concurrent computation engine. As the performance of computers advances and the use of networks is widely spreading, cluster computing is becoming an affordable and powerful platform for distributed memory parallel processing. Message passing is usually used to communicate between computer nodes in cluster computing. Unfortunately, programming with message passing is error-prone, tedious and hard to debug. A distributed shared memory (DSM) system provides users a logical global shared memory abstraction on top of the distributed memory cluster. It releases programmers from the burden of taking care of data flows and allocation explicitly.
A major drawback with the cluster computing approach is the high communication overhead incurred in the system software and in the interconnection networks. Unfortunately, typical communications in parallel programs transmit frequent but short messages. It is very difficult to execute these programs efficiently on cluster ocmputing environments. One solution is to hide the long communication overhead by overlapping computation with communication.
Multithreading is one of the best candidates for this purpose. We have implemented a thread-based DSM called Adsmith+. Adsmith+ was developed by integrating Adsmith, a DSM system built on top of PVM, with Pthread. Through PVM and Pthread, Adsmith+ is very portable and it supports efficient parallel programming through the overlap between computation and communication.
Unfortunately, PVM and Adsmith are not thread safe. To support multithread applications, we must address the reentrance problem, message buffering and dispatching, and other related issues. In this thesis, we will examine the issues caused by the extension of an existing DSM to a multithreaded system, and introduce our solutions. Implementation details of Adsmith+ will be described. Preliminary performance results show that Adsmith+ is able to hide the latency of communication and improve program performance.
|
author2 |
Tang, Chuan-Yi |
author_facet |
Tang, Chuan-Yi 留智文 |
author |
留智文 |
spellingShingle |
留智文 A Threaded DSM Based On Adsmith |
author_sort |
留智文 |
title |
A Threaded DSM Based On Adsmith |
title_short |
A Threaded DSM Based On Adsmith |
title_full |
A Threaded DSM Based On Adsmith |
title_fullStr |
A Threaded DSM Based On Adsmith |
title_full_unstemmed |
A Threaded DSM Based On Adsmith |
title_sort |
threaded dsm based on adsmith |
publishDate |
1997 |
url |
http://ndltd.ncl.edu.tw/handle/53474878423196151079 |
work_keys_str_mv |
AT liúzhìwén athreadeddsmbasedonadsmith AT liúzhìwén yǐadsmithwèijīchǔdeduōxùfēnsànshìgòngxiǎngjìyìtǐ AT liúzhìwén threadeddsmbasedonadsmith |
_version_ |
1718028478104731648 |