Responsive image
博碩士論文 etd-1110110-154844 詳細資訊
Title page for etd-1110110-154844
論文名稱
Title
CDPthread系統線程遷徙之設計與實作
On the Design and Implementation of Thread Migration for CDPthread-based System
系所名稱
Department
畢業學年期
Year, semester
語文別
Language
學位類別
Degree
頁數
Number of pages
73
研究生
Author
指導教授
Advisor
召集委員
Convenor
口試委員
Advisory Committee
口試日期
Date of Exam
2009-07-31
繳交日期
Date of Submission
2010-11-10
關鍵字
Keywords
分散式共享記憶體、線程遷移
Distributed Shared Memory, Thread Migration, CDPthread
統計
Statistics
本論文已被瀏覽 5626 次,被下載 15
The thesis/dissertation has been browsed 5626 times, has been downloaded 15 times.
中文摘要
分散式共享記憶體主要研究目標之一是降低網絡流量並減少延遲。其中一個解決這問題的方法是使用線程遷移。在本篇論文中,我們描述如何在CDPthread系統上實做線程遷移。為了保持高度的可攜性和靈活性,在使用者函式庫中實做一個通用的線程遷移組。這個機制可以將系統資源作更好地利用及提高CDPthread的性能。它也使得程序設計師能輕易的遷移不同節點之間的線程。此外,我們利用線程遷移實作動態負載平衡。從最後的實驗結果看來,動態負載平衡在平均情況下能大幅的提高系統的效能.
Abstract
One of the primary goals of Distributed Shared Memory (DSM) research is to minimize network traffic and reduce the latency. One way to solve this problem is to use thread migration. In this thesis, we show how thread migration is implemented in a CDPthread-based system. To maintain high portability and flexibility, a generic thread migration package is implemented as a user library. This mechanism can be used to better utilize system resources and improve performance of a CDPthread-based system. It also provides programmer an easy way to migrate threads between different nodes. Moreover, we use thread migration to implement dynamic load balance. Our experimental results show that the dynamic load balance can improve system performance significantly in the average case.
目次 Table of Contents
List of Figures iii
List of Listings v
Chapter 1 Introduction 1
1.1 Distributed Shared Memory . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Memory Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Sequential Consistency (SC) . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Release Consistency (RC) . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.3 Entry Consistency(EC) . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.4 Scope Consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.5 Thread migration in release consistency model . . . . . . . . . . . . 7
1.3 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5 Organization of the thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Chapter 2 Related Work 9
2.1 Reserving Memory for Stacks in Other Systems . . . . . . . . . . . . . . . . 9
2.2 Multithreaded Environment for DSM System . . . . . . . . . . . . . . . . . 10
Chapter 3 Design and Implementation of Thread Migration 12
3.1 Migration State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.1.1 Memory State Migration . . . . . . . . . . . . . . . . . . . . . . . . 13
3.1.2 Communication State Migration . . . . . . . . . . . . . . . . . . . . 14
3.1.3 Kernel State Migration . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2 Thread Migration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3.2.1 Fixed Address for the System-wide Stack in CDPthread . . . . . . . 15
3.2.2 Basic Software Component in CDPthread . . . . . . . . . . . . . . . 15
3.2.3 Static Stack for Thread Migration in CDPthread . . . . . . . . . . . . 16
3.2.4 Design and Implementation of Thread Migration in CDPthread . . . . 17
3.3 Implementing Dynamic Load Balance . . . . . . . . . . . . . . . . . . . . . 25
Chapter 4 Experimental Results 27
4.1 Experimental Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.2 Thread Migration Works in CDPthread . . . . . . . . . . . . . . . . . . . . . 27
4.3 Dynamic Load Balance Testing . . . . . . . . . . . . . . . . . . . . . . . . . 36
Chapter 5 Conclusion and Future Work 43
5.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Bibliography 47
Appendix A The Testing Program Running on CDPthread Environment with Dynamic
Load Balance 50
Appendix B Set of jobs in the different case 63
參考文獻 References
[1] P. Keleher, A. L. Cox, H. Dwarkadas, and W. Zwaenepoel, “Treadmarks: Distributed
shared memory on standard workstations and operating systems,” In Proceedings of the
1994 Winter Usenix Conference, pp. 115–131, 1994.
[2] M. Rangarajan and L. Iftode, “Software distributed shared memory over virtual interface
architecture: Implementation and performance,” In Proceedings of the 3rd Extreme
Linux Workshop, pp. 341–352, 2000.
[3] D. J. Scales, K. Gharachorloo, and C. A. Thekkath, “Shasta: A low overhead, softwareonly
approach for supporting fine-grain shared memory,” In Proceedings of the Seventh
International Conference on Architectural Support for Programming Languages and
Operating Systems, pp. 174–185, 1996.
[4] L. Iftode, C. Dubnicki, E. W. Felten, and K. Li, “Improving release-consistent shared
virtual memory using automatic update,” In The 2nd IEEE Symposium on High-
Performance Computer Architecture, pp. 14–25, 1996.
[5] L. Lamport, “How to make a multiprocessor computer that correctly executes multiprocess
programs,” IEEE Transactions on Computers, vol. Volume 28, no. Issue 9, pp. 690–
691, September 1979.
[6] K. Gharachorloo, D. Lenoski, J. Laudon, P. Gibbons, A. Gupta, and J. Hennessy, “Memory
consistency and event ordering in scalable shared-memory multiprocessors,” In
Proceedings of the 17th Annual International Symposium on Computer Architecture,
pp. 15–26, 1990.
[7] B. N. Bershad and M. J. Zekauskas, “Midway: Shared memory parallel programming
with entry consistency for distributed memory multiprocessors,” Annual IEEE International
Computer Conference, pp. 528–537, 1993.
[8] L. Iftode, J. P. Singh, and K. Li, “Scope consistency: A bridge between release consistency
and entry consistency,” In Proceedings of the 8th Annual ACM Symposium on
Parallel Algorithms and Architectures, pp. 277–287, 1996.
[9] J. S. Chase, F. G. Amador, E. D. Lazowska, H. M. Levy, and R. J. Littlefield, “The amber
system: Parallel programming on a network of multiprocessors,” In Proceedings of the
12th ACM Symposium on Operating Systems Principles, pp. 147–158, 1989.
[10] J. Casas, R. Konuru, R. Prouty, J. Walpole, S. W. Otto, and S. W. Otto, “Adaptive load
migration systems for pvm 1 of 23 adaptive load migration systems for pvm,” 1994.
[11] F. Mueller, “Distributed shared-memory threads: Dsm-threads,” In Workshop on Run-
Time Systems for Parallel Programming, pp. 31–40, 1997.
[12] A. Itzkovitz, A. Schuster, and L. Shalev, “Thread migration and its applications in distributed
shared memory systems,” Journal of Systems and Software, vol. 42, pp. 71–87,
1998.
[13] Y. Sudo, S. Suzuki, and S. Shibayama, “Distributed-thread scheduling methods for reducing
page-thrashing,” Proceedings of the 6th IEEE International Symposium on High
Performance Distributed Computing table of contents, pp. 356–364, 1997.
[14] C. Amza, A. Cox, K. Rajamani, and W. Zwaenepoel, “Tradeoffs between false sharing
and aggregation in software distributed shared memory,” in Software Distributed
Shared Memory,”in Proceedings of the Principles and Practice of Parallel Programming,
pp. 90–99, 1997.
[15] G. Antoniu and L. Boug, “Dsm-pm2: A portable implementation platform for multithreaded
dsm consistency protocols,” Parallel and Distributed Processing Symposium.,
Proceedings 15th International, pp. 55–70, 2001.
[16] G.-F. Tseng, “CDPthread: A POSIX-THREAD Based Distributed Computing Environment,”
Master Thesis, pp. 1–151, 2009.
[17] E. Mascarenhas and V. Rego, “Ariadne: Architecture of a portable threads system supporting
mobile processes,” Software-Practice and Experience, vol. 26, pp. 90–99, 1996.
[18] Intel 64 and IA-32 Architectures Software Developer’s Manual, vol. 1. Intel Corporation,
November 2007.
[19] Intel 64 and IA-32 Architectures Software Developer’s Manual, vol. 2A. Intel Corporation,
November 2007.
[20] Intel 64 and IA-32 Architectures Software Developer’s Manual, vol. 2B. Intel Corporation,
November 2007.
[21] Intel 64 and IA-32 Architectures Software Developer’s Manual, vol. 3A. Intel Corporation,
November 2007.
[22] Intel 64 and IA-32 Architectures Software Developer’s Manual, vol. 3B. Intel Corporation,
November 2007.
[23] Y.-C. Chou, “On the Design and Implementation of Load Balancing for CDPthreadbased
Systems,” Master Thesis, pp. 1–44, 2009.
電子全文 Fulltext
本電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。
論文使用權限 Thesis access permission:校內公開,校外永不公開 restricted
開放時間 Available:
校內 Campus: 已公開 available
校外 Off-campus:永不公開 not available

您的 IP(校外) 位址是 3.138.102.178
論文開放下載的時間是 校外不公開

Your IP address is 3.138.102.178
This thesis will be available to you on Indicate off-campus access is not available.

紙本論文 Printed copies
紙本論文的公開資訊在102學年度以後相對較為完整。如果需要查詢101學年度以前的紙本論文公開資訊,請聯繫圖資處紙本論文服務櫃台。如有不便之處敬請見諒。
開放時間 available 已公開 available

QR Code