| 研究生: |
許育展 Shiu, Yu-Jan |
|---|---|
| 論文名稱: |
在奔騰4處理器及個人電腦叢集上的計算最佳化 Computation optimization on Pentium 4 processor and personal computer clusters |
| 指導教授: |
何旭彬
Ho, Shi-Pin |
| 學位類別: |
碩士 Master |
| 系所名稱: |
工學院 - 機械工程學系 Department of Mechanical Engineering |
| 論文出版年: | 2002 |
| 畢業學年度: | 90 |
| 語文別: | 中文 |
| 論文頁數: | 96 |
| 中文關鍵詞: | 負載平衡 、奔騰4處理器 、個人電腦叢集 、SSE2 |
| 外文關鍵詞: | Personal computer clusters, Load balance, Pentium 4 processor, SSE2 |
| 相關次數: | 點閱:79 下載:1 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
本文主要是探討奔騰4處理器與個人電腦叢集計算的最佳化技術,我們針對寫程式時常碰到的五種計算型態,包括向量加乘、向量內積、全矩陣向量相乘、稀疏矩陣向量相乘及全矩陣相乘,來分析奔騰4處理器中的SSE2指令集對運算速度的影響,並由不同的資料量,來觀察記憶體與處理器間的關係,同時與其他不同性能的處理器(AMD Athlon XP及奔騰III處理器)做比較。利用以上稀疏矩陣向量相乘實驗的數據,在個人電腦叢集上對平行有限元素做負載平衡。
我們使用包裝、暫存器及區塊的方式來提升運算速度。在向量加乘和向量內積中因資料型態簡單,程式不做unroll,Intel編譯器會以包裝方式及unroll運作而得到最佳結果。在全矩陣向量相乘中程式利用unroll方式來撰寫以充分利用暫存器。稀疏矩陣向量相乘以原來的寫法及全矩陣相乘以jik順序即可得到不錯的結果。在平行處理方面,於負載平衡後有不錯的運算速度。
The purpose of this thesis is to study the computation optimization technique on Pentium 4 processor and personal computer clusters. Five commonly used calculating types which are the vector-vector addition and multiplication, vector inner product, full matrix-vector multiplication,sparse matrix-vector multiplication, full matrix-matrix multiplication are studied in this research. We analyze the influences of the SSE2 instruction set on operating speed. Different data amount and the relationshipbetween the memory and the processor are studied. The results are compared with other processors (AMD Athlon XP and Pentium III processors)which have distinct performances. On the personal computer clusters, the results of sparse matrix-vector multiplication are used to do load balance of parallelism in finite element method.
Packed data, unroll and block technique are used to increase the computation speed in this research. Because vector-vector addition and multiplication and vector inner product have simple data structures, the Intel compiler can automatically packed data and unroll to produce assembly code even no unrolling in C++ codes. The use of unrolling in full matrix-vector multiplication makes good use of registers which will increase the computation speed. Sparse matrix-vector multiplication in original ways and full matrix-matrix multiplication in jik method have good operating speed. In parallelism of the Jacobi conjugate gradient method, the operating speed after load balance has good performance.
[1] L. N. Trefethen, D. Bau, Ⅲ, “Numerical Linear Algebra”, SIAM, 1997。
[2] “Desktop Performance and Optimization for Intel Pentium 4 Processor” , Intel Corp. , 2001。
[3] R. S. Tetrick , B. Fanning , R. Greiner, T. Huff, L. Hacking, D. Hill, S.Chennupaty, D. Koufaty, S. Palacharla, J. Rabe, M. Derr, Desktop Platforms Group, “A Discussion of PC Platform Balance :the Intel Pentium 4 Processor-Based Platform Solutions”, Intel Technology Journal Q1, Intel Corp. , 2001。
[4] A. Bik, M. Girkar, P. Grey, X. Tian, “Efficient Exploitation of Parallelism on Pentium III and Pentium 4 Processor-Based Systems”, Intel Technology Journal Q1,Microcomputer Software Laboratories , Intel Corp., 2001。
[5] 徐文政, “大型三角稀疏矩陣平行解法”, 碩士論文, 國立成功大學機械工程學系, 1996。
[6] 林香君, “多處理器個人電腦上的平行有限元素程式設計”, 碩士論文, 國立成功大學機械工程學系, 1998。
[7] 吳宗穎, “平行處理應用於有限元素計算之使用評估”, 碩士論文,國立成功大學機械工程學系, 1999。
[8] 黃建彰, “個人電腦叢集之平行有限元素計算”, 碩士論文, 國立成功大學機械工程學系, 2000。
[9] 陳明凱, “平行有限元素法之負載平衡探討”, 碩士論文, 國立成功大學機械工程學系, 2001。
[10] C. A. Bohn, G. B. Lamont, “Load Balancing for Heterogeneous Clusters of PCs”, Future Generation Computer System, Volumn 18, 2002。
[11] R. Barrett, M. Berry, T. F. Chan, J. Demmel, J. Donato, J. Dongarra, V. Eijkhout, R. Pozo, C. Romine, H. van der Vorst, “Templates for the Solution of Linear Systems:Building Blocks for Iterative Methods”, SIAM, 1994.
[12] “The IA-32 Intel Architecture Software Developer’s Manual , Volume 1:Basic Architecture” , Intel Corp. , 2001。
[13] “The IA-32 Intel Architecture Software Developer’s Manual , Volume 2:Instruction Set Reference Manual” , Intel Corp. , 2001。
[14] “The IA-32 Intel Architecture Software Developer’s Manual , Volume 3:System Programming Guide ”, Intel Corp. , 2001。
[15] “Intel Pentium 4 and Intel XeonTM Processor Optimization Reference Manual ”, Intel Corp. , 2001。
[16] “Optimizing Applications with the Intel C++ and Fortran Compilers for Linux ”, Intel Corp. , 2001。
[17] “The Intel C++ Compiler User’s Guide” , Intel Corp. , 2002。
[18] K. Dowd, “High Performance Computing”, O’Reilly &Associates,Inc., 1993。
[19] 施威銘研究室, “Red Hat Linux 架站實務”, 初版, 旗標出版股份有限公司, 2000。
[20] 陳俊宏, “Red Hat Linux 7.x + CLE 1.0 系統安裝 DIY”, 初版, 旗標出版股份有限公司, 2001。
[21] 施威銘研究室, “Red Hat Linux 7.1實務應用”, 初版, 旗標出版股份有限公司, 2000。
[22] 羅曉廣, 曾鍾健,“Linux 網路應用教程”, 初版, 百資科技股份有限公司, 2000。
[23] R.Stones , N. Matthew , “Linux 程式設計教學手冊”, 初版,碁峰資訊股份有限公司, 2000。