簡易檢索 / 詳目顯示

研究生: 許育展
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.

    摘要 I Abstract II 誌謝 III 目錄 IV 表目錄 VII 圖目錄 XI 符號說明 XIII 第一章 緒論 1   1.1 前言 1   1.2 文獻回顧 2   1.3 動機與目的 3   1.4 論文架構 4 第二章 基本理論 5   2.1 有限元素法 5   2.2 資料儲存格式 6     2.2.1 CRS 儲存格法 7     2.2.2 BCRS 儲存格法 8   2.3 求解線性聯立方程組 10     2.3.1 預加條件共軛梯度法 11     2.3.2 預選矩陣 13 第三章 奔騰4處理器 14   3.1 英特爾處理器的發展 14   3.2 奔騰4處理器架構的簡介 15     3.2.1 高等管線技術 16     3.2.2 快速執行引擎及硬體預取 17     3.2.3 四倍爆量的系統匯流排 18     3.2.4 串流SIMD延伸2(SSE2)指令集 18     3.2.5 進階動態執行 20     3.2.6 L1資料快取和進階傳輸快取 21   3.3 英特爾C++ 編譯器 22     3.2.1 英特爾C++ 編譯器的特色 22     3.2.2 指令介紹 23 第四章 電腦的運算與平行處理 24   4.1 電腦的硬體架構與運作方式 24   4.2 暫存器、unroll及區塊的概念 26   4.3 平行處理 29     4.3.1 個人電腦叢集的發展 29     4.3.2 平行計算環境架構 31     4.3.3 實驗室個人電腦叢集介紹 32   4.4 平行處理軟體 34     4.4.1 MPI發展背景 34     4.4.2 MPI指令介紹 35   4.5 有限元素法的平行處理 38     4.5.1 預加條件共軛梯度法的平行處理 38     4.5.2 Jacobi預選矩陣共軛梯度法之平行處理 39 第五章 實驗結果與討論 43   5.1 向量加乘實驗 45   5.2 向量內積實驗 49   5.3 全矩陣向量相乘實驗 59   5.4 全矩陣相乘實驗 66   5.5 CRS稀疏矩陣向量相乘實驗 75   5.6 BCRS稀疏矩陣向量相乘實驗 81   5.7 平行處理實驗 84 第六章 結論 89 參考文獻 91 附錄A 資料彙整 94 自述 96

    [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。

    下載圖示 校內:立即公開
    校外:2002-07-05公開
    QR CODE