研究生: |
王應龍 Ying-Lung Wang |
---|---|
論文名稱: |
一個以 Java 語言實作之具分散式共享記憶體的平行虛擬機器 Design and Implementation of a Parallel Virtual Machine with Distributed Shared Memory by Using Java |
指導教授: |
黃興燦
Shing-Tsaan Huang 郭育政 Yu-Chen Kuo |
口試委員: | |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 資訊工程學系 Computer Science |
論文出版年: | 2000 |
畢業學年度: | 88 |
語文別: | 中文 |
論文頁數: | 40 |
中文關鍵詞: | 分散式系統 、分散式共享記憶體 、分散式計算環境 、平行程式 |
外文關鍵詞: | Distributed System, Distributed Shared Memory, Distributed Computing Environment, Parallel Programs |
相關次數: | 點閱:2 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
諸如天文、氣象、化學資料處理等複雜而費時的計算工作通常需要使用以網路連結多部計算機的分散式系統。藉由多部電腦的分工合作來縮短計算的時間。由於分散式系統中各個計算機的機種可能不同,所採用的指令集與作業系統也可能不盡相同。程式設計師發展在分散式系統上執行的程式時,必須為各種系統平台提供適用的版本。移植程式到不同的平台並維護各個版本,使它們能正確地進行合作並不容易。因此具跨平台特性的 Java 語言成為分散式系統上重要的程式開發工具。
在分散式系統,由不同的機器執行的程式必須建立網路連線才能交換合作所需的資訊。而透過網路交換資訊時,將資訊封裝、拆封的步驟使得程式的設計較為複雜,不像在同一部機器上執行的程式,僅透過普通的的記憶體存取就能達成交換資訊的目的。因此在分散式系統上提供一個分散式共享記憶體的機制,使得各個實際上僅透過網路連結的機器間彷彿存在一個共享記憶體,便可以讓分散式系統上的程式設計變得較為容易。
本篇論文的目標是結合 Java 與分散式共享記憶體的優點,提供一個便於發展、執行分散式計算環境上的平行程式的系統。
In this thesis, we design and implement a system with Distributed Shared Memory (DSM) mechanism for distributed computing environments by using Java.
There is a speed limit for the processor. Many complex and time-consuming computation tasks, such as astronomical, chemical, or meteorological data processing, usually need distributed systems to increase their computing power. A distributed system may consist of many different type machines. Due to the difference of machine types, the instruction sets used in those machines may be different. When developing parallel programs over a distributed system with different type machines, programmers must be careful and may spend a lot of efforts in writing several versions of their programs for running in different system platforms. However, porting programs is not an easy job. Hence, the portability and the cross-platform of Java make it be a good solution for simplifying the heterogeneous programming. For distributed computing, Java provides Remote Method Invocation (RMI) mechanism for invoking methods of a remote object like invoking methods of a local object. However, programmers still need to take care of problems of data replications. The maintenance of the data consistency decreases the development of parallel programs.
DSM mechanism provides a shared memory abstraction over a cluster of physically distributed machines. Communication between programs running on different machines is achieved in a normal memory access fashion. Complicated procedures of the network communication and those of the data consistency are hidden by DSM.
Therefore, the goal of this thesis is to combine the advantage of Java and DSM to provide a more powerful distributed computing environment.
[ALK95]
Jung-Ho Ahn, Kang-Woo Lee and Hyoung-Joo Kim, “Architectural issues in adopting distributed shared memory for distributed object management systems,” Proceedings of the 5th IEEE Computer Society Workshop on Future Trends of Distributed Computing Systems, pages 294 -300, 1995
[DGMS96]
Jack J. Dongarra, G. A. Geist, Robert Manchek and V. S. Sunderam, “Integrated PVM Framework Supports Heterogeneous Network Computing,” Oak Ridge National Laboratory, 1996
http://www.netlib.org/utk/papers/comp-phy7
[Ferrari99]
Adam J. Ferrari, “JPVM – The Java Parallel Virtual Machine”
http://www.cs.virginia.edu/~ajf2j/jpvm.html
[GFHMN98]
Vladimir Getov, Susan Flynn-Hummel, Sava Mintchev and Ton Ngo, “Massively parallel computing in Java,” Proceedings of the 3rd Working Conference on Massively Parallel Programming Models, pages 112 -117, 1998
[JMA99]
Hennessy, J., Heinrich, M. and Gupta, A., “Cache-coherent distributed shared memory: perspectives on its development and future challenges,” Proceedings of the IEEE, Vol.87, No.3, pages 418-429, March 1999
[JRHP]
The Java Remote Method Invocation (RMI) Home Page.
http://java.sun.com/products/jdk/rmi/index.html
[MPISTD]
“MPI – The Message-Passing Interface Standard”
http://www-unix.mcs.anl.gov/mpi
[NV91]
Bill Nitzberg and Virginia Lo, “Distributed Shared Memory: A Survey of Issues and Algorithms,” IEEE Computer, Vol.24, No.8, pages 52-60, Aug. 1991
[SH99]
Sandhu, H., “An extensible framework for coherence in distributed shared data systems,” Proceedings of the 4th International Symposium on Parallel Architectures, Algorithms, and Networks, pages 106 -111, 1999
[Thurman98]
David A. Thurman, “JavaPVM – A native methods interface to PVM for Java Platform”
http://www.chmsr.gatech.edu/jPVM
[YC97]
Weimin Yu and Alan Cox, “Java / DSM: A Platform for Heterogeneous Computing,” ACM Workshop on Java for Science and Engineering Computation, 1997
http://www.npac.syr.edu/users/gcf/03/javaforcse/acmspecissue/finalps/17_yu.ps
[ZGC94]
K. Zielinski, M. Gajecki and G. Czajkowski, “Parallel Programming Systems for LAN Distributed Computing,” Proceedings of the 14th International Conference on Distributed Computing Systems, pages 600-607, 1994