亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        三維重構算法中球諧函數(shù)的并行計算的實現(xiàn)

        2017-12-13 13:05:10肖晨陽施游
        電腦知識與技術 2017年33期

        肖晨陽 施游

        摘要:采用基于球坐標系的病毒三維重構算法中球諧函數(shù)的計算非常復雜,在單機單核上耗時很長。通過分析,該文實現(xiàn)了一種基于OpenMP的多核并行方法,可以提高球諧函數(shù)計算速度,實驗結果證明方法簡單有效。

        關鍵詞:多核系統(tǒng);并行計算;OpenMP

        中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2017)33-0083-02

        結構決定功能,生物大分子同樣如此。生物大分子三維結構研究對于了解其功能及生物學機制等具有非常重要的意義。結構生物學方法包括X射線晶體學方法(X-ray crystallography)、核磁共振技術(nuclear magnetic resonance spectroscopy)和冷凍電鏡技術[Cryo-electron microscopy (Cryo-EM) single particle]。近年來,隨著冷凍電子顯微鏡技術的發(fā)展、三維重構算法的不斷完善及計算機計算能力的不斷提高等,冷凍電鏡技術,特別是冷凍電鏡單顆粒技術(Cryo-EM single particle)已成為解析大型蛋白質(zhì)復合體、病毒乃至細胞器高分辨三維結構的最有力工具之一,其在結構生物學中正扮演著越來越重要的角色。

        在生物大分子三維重構實現(xiàn)中需要用到數(shù)萬個二維投影顆粒的冷凍電鏡照片,對二維投影顆粒的處理過程中每次都要重復進行中心移位,球諧函數(shù)計算等處理操作。普通的計算機單核線程處理時間長。而目前我們配備的計算機都具有八個以上線程核心,配備的服務器線程核心高達48個,傳統(tǒng)的串行程序只會跑滿一個線程核心,其他線程核心處于閑置狀態(tài)。因此充分利用線程核心很有必要。

        OpenMP標準形成于二十世紀九十年代,用于多處理器核心并行程序設計的一套方案,能夠充分利用現(xiàn)有的CPU的硬件資源,目前OpenMPC、C++和Fortran等程序語言,也支持GNU的編譯器,符合我們當前使用的程序設計方案。采用OpenMp可以在現(xiàn)有的程序代碼中提專用的pragma等編譯指導語句,編譯器可以自動將程序進行并行化,容易改造,成本比較低。

        采用基于球坐標系的病毒三維重構算法,已經(jīng)成為基于冷凍電鏡技術進行三維重構的重要方法。其中關于對稱匹配函數(shù)的計算量大,耗時長。

        對稱匹配函數(shù)的計算包括組合系數(shù)[Aμl,m]和球諧函數(shù)[Yl,m]兩部分,高階組合系數(shù)可以由低階系數(shù)通過復雜遞推關系獲得。球諧函數(shù)可表示為:

        [Yl,m(θ,?)=(-1)m(2l+1)(l-m!4π(l+m)!Pml(cosθ)eim?] (1)

        其中[Pml(cosθ)]為締合勒讓德多項式,可表示為:

        [Pml(cosθ)=12ll!sinmθdl+m(dcosθ)l+m(cos2θ-1)l] (2)

        由上可見,單個球諧函數(shù)的計算變得非常復雜,而對于球諧函數(shù)組成的對稱匹配函數(shù),比如,l=1000,需要Y1000,0, Y1000,1, …., Y1000,1000共1001個球諧函數(shù)的組合,而且考慮基函數(shù)完備性,l=1000時還有35種不同的多重性(μ=35),即35種不同的組合方法,因此,整個計算過程變得更加復雜。我們從此算法過程可以看出,35種組合方法的組合系數(shù)和球諧函數(shù)的計算可以由通過OpenMp并行處理。

        如圖1所示為并行程序設計流程圖,圖2 為串行程序設計的流程圖,二者的主要區(qū)別在于串行程序每次計算一個顆粒,并行程序每次計算100個顆粒。

        由于每個顆粒的計算完全獨立,不需要進行數(shù)據(jù)共享和數(shù)據(jù)通訊,所以用OpenMP非常方便,僅僅使用 !$OMP PARALLEL ,!$OMP END PARALLEL即可。以下為偽代碼:

        program main

        Use omp_lib

        Call ReadPara(100)

        !$OMP PARALLEL

        Do pid=first,last

        Call ComputeStick(para)

        End do

        !$OMP END PARALLEL P

        End program

        ReadPara函數(shù)是讀入多個顆粒數(shù)據(jù),ComputeStick函數(shù)是計算球諧函數(shù)。

        結果與分析:

        我們使用計算CPV病毒的程序(以下簡稱為串行程序),計算過程是取10409個顆粒進行計算。在主頻3.5G intel i7的CPU上運行,串行程序,需要時間是接近3小時。經(jīng)過并行化改造后,僅僅需要30分鐘左右,執(zhí)行效率提高了5倍。采用OpenMp方法對原來程序改造,修改代碼很少,效果明顯。

        參考文獻:

        [1] 周偉明.多核計算與程序設計[M].武漢: 華中科技大學出版社,2009.

        [2] 張平,李清寶,趙榮彩.OpenMP并行程序的編譯器優(yōu)化[J].計算機工程,2006,32(24):37-40.

        [3] Parallel Programming in Fortran 95 using OpenMP [EB/OL].Fortran Coder.http://www.fcode.cn

        [4] OpenMp homepage [EB/OL] .http://www.openmp.org/endprint

        狠狠色狠狠色综合日日不卡| 日韩中文字幕在线观看一区| 国产精品免费无遮挡无码永久视频| 欧美怡红院免费全部视频| 国产精品亚洲А∨天堂免下载 | 日韩经典午夜福利发布| 色多多a级毛片免费看| 制服丝袜视频国产一区| 亚洲视频一区二区三区免费| 中文字幕精品人妻在线| 18禁真人抽搐一进一出在线| 欧美理论在线| 亚洲av精品一区二区三| 国产91色综合久久高清| 在线涩涩免费观看国产精品| 国产精品搭讪系列在线观看| 日韩精品极品在线观看视频| 少妇连续高潮爽到抽搐| 亚洲熟女一区二区三区| www插插插无码视频网站| 日本在线免费一区二区三区| 一本色道久久婷婷日韩| 全球中文成人在线| 国产成人午夜福利在线小电影| 漂亮人妻被强中文字幕乱码| 亚洲av福利天堂一区二区三| 好吊色欧美一区二区三区四区| 亚洲天天综合色制服丝袜在线| av成人综合在线资源站| 午夜精品射精入后重之免费观看| 青青草国产成人99久久| 一区二区三区在线蜜桃| 国语对白福利在线观看| 99精品一区二区三区无码吞精| 国产综合久久久久影院| 看国产亚洲美女黄色一级片| 国产精品无码久久综合| 91麻豆国产香蕉久久精品| 青青草视频国产在线观看| 丰满人妻久久中文字幕| 国产精品久久久久久52avav|