簡易檢索 / 詳目顯示

研究生: 陳致霖
Chen, Chih Lin
論文名稱: GAM-Cluster: 以GPU加速MetaCluster5.0
GAM-Cluster: Accelerating MetaCluster5.0 with GPU
指導教授: 唐傳義
Tang,Chuan Yi
口試委員: 韓永楷
Hon, Wing Kai
李哲榮
Lee, Che Rung
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Computer Science
論文出版年: 2015
畢業學年度: 104
語文別: 英文
論文頁數: 32
中文關鍵詞: 總體基因學總體基因學分群GPU加速
外文關鍵詞: MetaCluster5.0, Metaginomic binning, GPU accelerating
相關次數: 點閱:2下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 在總體基因學中,MetaCluster5.0是一個把環境中取得的基因片段做分群的程式。當要分群的基因片段數量越來越龐大的時候,比較兩兩基因片段的相似度將會花上非常多的時間。在這篇論文中,我們的目標為加速MetaCluster5.0。我們先分析MetaCluster5.0在各個階段所花費的時間,並且找出Metacluster5.0的效能瓶頸,我們發現在USMerge和GetNeighbor這兩個函數上花費的時間最多。另一方面,我們也發現這兩個函數非常適合以GPU平行技術來加速,故此我們提出了以GPU加速的MetaCluster5.0,名為GAM-Cluster,並使用了更多技巧(如將大資料切成許多塊以利計算、使用GPU的共享記憶體以加速資料的取得、使用查表法及創造一個緩衝區來收集要輸出的結果)以增進加速的效果。我們的實驗結果發現︰與使用了40個執行緒的CPU版本比較,GAM-Cluster在USMerge上達到了3.1倍的加速,而在GetNeighbor則是達到了8.1倍的加速;若與使用單一執行緒的CPU版本比較,則在這兩個函數中分別達到了64.4倍和178.3倍的加速。


    MetaCluster5.0 is a program for metagenomics binning, which is used to classify similar reads (DNA fragments) in a metagenomic sample into clusters. As reads come in large scale (up to millions in for a typical sample), and pairwise comparison between reads are needed to determine their similarity, the running time is slow. In this thesis, our goal is to accelerate MetaCluster5.0. We profiled MetaCluster5.0, and found out the performance bottleneck lies in its component func-tions USMerge and GetNeighbor. On the other hand, these two functions are good candidates to be parallelized with GPU for acceleration; various techniques, such as data partitioning, utilizing shared memory, using table lookup and output buffer, randomization, are proposed and found to be effective. Our experimental results showed a speedup of 3.1 times in USMerge and 8.1 times in GetNeighbor from the original 40-thread parallel version, or a speedup of 64.4 times and 178.3 times, respectively, from the original single-thread version.

    摘要 i Abstract ii 1. Introduction 1 1.1. Metagenomics and MetaCluster5.0 1 1.2. GPU and CUDA 2 1.3. Improving MetaCluster5.0 with GPU 2 1.4. Organization 3 2. MetaCluster5.0 4 2.1. Workflow and Major Functions of MetaCluster5.0 4 2.2. Preliminary Profiling 6 2.3. CompareReads – A Subroutine of USMerge and GetNeighbor 10 2.4. The USMerge Function 11 2.5. The GetNeighbor Function 14 3. Method 16 3.1. Background of GPU and CUDA 16 3.2. CUDA-GetNeighbor 18 3.2.1. Problem Partitioning 18 3.2.2. Workload Reduction and Load Balancing 19 3.2.3. Structure of Arrays (SoA) 20 3.2.4. Fine-Tuning I: Utilizing Shared Memory 21 3.2.5. Fine-Tuning II: Table Lookup 21 3.2.6. Fine-Tuning III: Output Buffer 22 3.2.7. Fine-Tuning IV: Improving Occupancy 22 3.3. CUDA-USMerge 22 4. Experiments 24 4.1. Experimental Settings 24 4.1.1. Platform 24 4.1.2. Outline of Experiments 24 4.2. Results for GetNeighbor Optimization 25 4.2.1. Effect of Output Buffer 25 4.2.2. Effect of Table Lookup Technique 26 4.2.3. Effect of Workload Reduction 27 4.2.4. Effect of Load Balancing 28 4.2.5. Effect of Utilizing Shared Memory Usage 29 4.3. Results for USMerge Optimization 30 5. Conclusions and Future Work 31 6. References 32

    [1] B. Yang, Y. Peng, H. C. M. Leung, S. M. Yiu, J. C. Chen, and F. Y. L. Chin (2009), “Unsupervised Binning of Environmental Genomic Fragments Based on An Error Robust Selection of l-mers”, in Third International Workshop on Data and Text Mining in Bioinformatics (DTMBio), pp. 3-10, 2009
    [2] CUDA Programming Guide, 7.5, NVIDIA
    [3] H. C. M. Leung, S. M. Yiu, B. Yang, Y. Peng, Z. Liu, J. Chen, J. Qin, R. Li, and F. Y. L. Chin (2013), “A Robust and Accurate Binning Algorithm for Metagenomic Sequences with Arbitrary Species Abundance ratio”, in Journal of Bioinformatics, vol. 27 issue 11, pp. 1489-1495, June 2013
    [4] M. Harris., S. Sengupta, and J. D. Owens (2007), “Parallel Prefix Sum (Scan) with CUDA” Addison-Wesley, Chapter 39, pp. 851–876, 2007
    [5] S. H. Lo, C. R. Lee, I. S. Chung, and Y. C. Chung (2013), “Optimizing Pairwise Box Intersection Checking on GPUs for Large-Scale Simulations”, in Journal of ACM Transactions on Modeling and Computer Simulation (TOMACS), vol. 23, issue 3, 2013
    [6] T. H. Cormen, C. E. Leiserson, R L. Rivest, and C. Stein, Introduction to Algorithms, third edition
    [7] Wikipedia, (2015) Binning (Metagenomics).
    [8] Wikipedia, (2015) CUDA.
    [9] Wikipedia, (2015) DNA_sequencing.
    [10] Wikipedia, (2015) Graphics_processing_unit.
    [11] Wikipedia, (2015) Metagenomics.
    [12] Y. Wang, H. C. M. Leung, S. M. Yiu, and F. Y. L. Chin (2012), “MetaCluster 4.0: A Novel Binning Algorithm for NGS Reads and Huge Number of Species”, in Journal of Computational Biology, vol. 19, issue 2, pp. 241-249, Feb. 2012
    [13] Y. Wang, H. C. M. Leung, S. M. Yiu, and F. Y. L, Chin (2012), “MetaCluster 5.0: A Two-round Binning Approach for Metagenomic Data for Low-abundance Species in A Noisy Sample”, in Journal of Bioinformatics, vol. 28, issue 18, Sep. 2012,
    [14] Y. W. Wu, and Y. Ye (2011), “A Novel Abundance-Based Algorithm for Binning Metagenomic Sequences Using l-Tuples”, in Journal of Computational Biology, vol. 18, Issue 3, Mar. 2011

    無法下載圖示 全文公開日期 本全文未授權公開 (校內網路)
    全文公開日期 本全文未授權公開 (校外網路)
    全文公開日期 本全文未授權公開 (國家圖書館:臺灣博碩士論文系統)
    QR CODE