基因組學已經徹底改變了公共衛生,并繼續為我們所有人帶來好處。為了實現其眾多成果,需要在云計算、on-prem數據中心、研究中心、醫院和更廣泛的生命科學行業中進行大量且不斷增長的計算投入。
Reference-guided assembly是該領域許多工作流中的一個重要階段。對于一個典型的患者,拭子會導致樣本在測序機中測序。這臺機器的輸出是千兆字節的片段(A、C、G和T DNA堿基的子串)。這些讀數與來自(標準)參考個體的完整人類基因組“對齊”,以確定讀數“適合”的位置,并組成患者基因組的大部分。
完成reference-guided assembly的三個最著名的應用程序是BWA(https://github.com/lh3/bwa)、BWA-mem2(https://github.com/bwa-mem2/bwa-mem2)和minimap2(https://github.com/lh3/minimap2)。由于應用如此廣泛,這些應用程序的價格和性能對行業至關重要。
在之前的博客(優化Arm服務器的BWA aligner:https://community.arm.com/arm-community-blogs/b/high-performance-computing-blog/posts/optimizing-genomics-and-the-bwa-aligner-for-arm-servers)中,我們展示了如何在AWS Graviton2上運行BWA及其性能,以對比2021早期流行的x86_64服務器。
在本博客中,我們現在可以展示三種主要aligners在Arm架構AWS Graviton3上的性能。AWS Gravaton3是AWS 服務器系列中最新的基于Arm的服務器,也是AWS Gratiton2的后續型號。
我們證明,與AWS Graviton2相比,AWS Gravaton3的性能提高了12%到31%。與目前最好的x86_64系統相比,Graviton3的績效提高了10%和23%。與同類x86_64系統相比,此結果可節省20-30%的成本。
應用程序和測試用例
我們使用1000 Genomes項目中的human_g1k_v37引用和NIST檔案中的NA12878引用。這些測試用例都反映在AWS S3上,并使用以下方法獲取:
aws s3 cp –no-sign-request s3://1000genomes/technical/reference/human_g1k_v37.fasta.gz . aws s3 cp –no-sign-request s3://giab/data/NA12878/Garvan_NA12878_HG001_HiSeq_Exome/NIST7035_TAAGGCGA_L001_R1_001.fastq.gz .
在每種測試案例下,我們都使用gcc-10編譯器進行平臺比較。這些測試用例中的每一個都可以通過普通的構建腳本在Arm上輕松構建,要么在主存儲庫中,要么在等待合并的公共分支中。
https://github.com/lh3/bwa https://github.com/dslarm/bwa-mem2 https://github.com/dslarm/minimap2
這些應用程序都是多線程的,具有可配置數量的工作線程。我們使用32個工作線程演示了8xlarge實例上的基準測試,這些實例有32個vCPU。
在運行時,我們使用Cloudflare zlib包替換系統zlib,這有助于aligners 更快地解壓縮輸入數據文件。在進一步的優化中,對于bwa,我們預加載了jemalloc庫,這對于多線程代碼中的標準內存分配函數來說更加有效。
我們的Github上提供了每個應用程序的構建腳本和獲取數據集的腳本,網址是https://github.com/arm-hpc/genomics-blog
AWS Graviton2到AWS Graviton3 --能力的飛躍
AWS Graviton3使用Arm Neoverse V1內核,相比之下,AWS Gravaton2使用Arm Nioverse N1內核。
Neoverse V1帶來了顯著的變化,尤其是它的內核更寬了許多,能夠在每個周期執行更多指令,比其前一代處理器能提升更多指令級并行性。
使用perf-stat,我們可以獲取兩個平臺的每周期指令數(IPC)。
可以看出,IPC的改進在每個應用程序中都有所不同,minimap2 最多可在每個周期多增加26%的指令。此結果適用于整個工作負載,還包括I/O所花費的時間。
AWS Graviton3也是AWS系列中的第一個DDR5系統,其DDR帶寬比其前一代處理器多50%。
此外,AWS Graviton3的執行頻率為2.6GHz,而Graviton2為2.5GHz。
較高的IPC和頻率的綜合影響直接轉化為運行時效率,我們將在下面進一步討論。
哪種體系結構提供了最高的性能和最低的成本?
與上一代AWS Graviton2(c6g.8xlarge)相比,性能提高了12%至31%。
同時,AWS Graviton3的性能也比Intel Icelake(c6i.8xlarge)高出10%至23%,比AMD Milan(c6a.8xlage)高出11%至21%。
總結
AWS Graviton3為所有三個基因組學應用程序提供了性價比最高的平臺。在AMD Milan上運行相同的應用,每個樣本集的成本高出27%,在Intel Ice Lake上高出45%。這一結果意味著AWS Graviton3比AMD Milan節省了20%,比Intel Ice Lake節省了30%。
-
ARM
+關注
關注
134文章
9111瀏覽量
368035 -
云計算
+關注
關注
39文章
7840瀏覽量
137556 -
數據中心
+關注
關注
16文章
4813瀏覽量
72224
原文標題:使用Arm服務器減少基因組學的時間和成本
文章出處:【微信號:Arm軟件開發者,微信公眾號:Arm軟件開發者】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論