一種利用openmp和mpi混合加速量子介觀體系求解的方法
【專利摘要】本發(fā)明提供一種利用OPENMP和MPI混合加速量子介觀體系求解的方法,將介觀物理體系能帶計(jì)算中的波矢獨(dú)立出來,并使用MPI進(jìn)程并行來實(shí)現(xiàn)。然后將每個(gè)MPI進(jìn)程中的哈密頓量矩陣元初始化,交由多核處理器間的并行線程完成,這部分由OpenMP來實(shí)現(xiàn)。之后再調(diào)用并行數(shù)學(xué)庫實(shí)現(xiàn)對矩陣本征值的求解。最后,將計(jì)算的結(jié)果歸約到MPI主進(jìn)程上并輸出,從而有效加速介觀物理問題求解的計(jì)算。本發(fā)明充分發(fā)揮多核處理器的強(qiáng)大計(jì)算能力,并有效回避節(jié)點(diǎn)間通信帶寬低和延遲高的不足,進(jìn)而極大的提高介觀物理問題在現(xiàn)代高性能計(jì)算集群上的計(jì)算速度和擴(kuò)展性,大幅縮短對介觀體系的計(jì)算模擬時(shí)間。
【專利說明】-種利用OPENMP和MPI混合加速量子介觀體系求解的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及高性能計(jì)算領(lǐng)域在計(jì)算物理學(xué)和納米材料科學(xué)方面的應(yīng)用領(lǐng)域,具體 地說是一種利用OPENMP和MPI混合加速量子介觀體系求解的方法。
【背景技術(shù)】
[0002] 隨著人類社會(huì)的不斷進(jìn)步,科學(xué)技術(shù)的發(fā)展,人們對自然界的認(rèn)識越來越廣泛,并 逐步的向微、納觀等物理體系結(jié)構(gòu)深入。與此同時(shí),生物技術(shù)、化學(xué)生產(chǎn)及制藥的需求,也迫 切的要求人們能夠在電子、原子或分子尺度上來精確把握物體的性態(tài),因此對介觀體系的 研究是與人類的生活密切關(guān)。就信息產(chǎn)業(yè)來說,現(xiàn)在的微處理器及存儲(chǔ)器芯片的基本組成 單元-晶體管的尺度已經(jīng)達(dá)到了幾十個(gè)納米,已處理介觀體系的范疇。通過對介觀物理體 系的研究,一方面可以在原有的物理理論,諸如經(jīng)典歐姆定律等,已經(jīng)失效的前提下,給出 現(xiàn)有器件尺寸縮小的下限;另一方面,新發(fā)現(xiàn)的物理現(xiàn)象也為制作新型量子器件及新型材 料提供了物理基礎(chǔ),如自旋電子學(xué)器件、量子點(diǎn)激光器等。
[0003] -般說來屬于介觀范疇的物理體系種類繁多,包括量子點(diǎn)(也稱作人造原子)、量 子環(huán)、納米線、納米彈簧等等。從理論上對這些介觀物理體系的研究和模擬計(jì)算對實(shí)驗(yàn)研 究以及量子器件的制備具有重要的現(xiàn)實(shí)意義。自上個(gè)世紀(jì)量子力學(xué)理論誕生以來,人們逐 步發(fā)展了諸如絕熱近似、哈特里近似、哈特里-??私疲℉artree-Fock)、密度泛函理論 (DFT)、變分法(Variational Method)、隨機(jī)相近似(Random-Phase Approximation)、分子 動(dòng)力學(xué)方法以及組態(tài)相互作用(Configuration Interaction)方法等等,來計(jì)算介觀體系的 物理問題。這些方法適用于不同的場合,對特定的介觀體系有不錯(cuò)的計(jì)算效果。但對于需 要考慮電子自旋的介觀體系或稀磁半導(dǎo)體等物理問題,人們往往還是從介觀體系嚴(yán)格的系 統(tǒng)哈密頓量出發(fā),通過選取合適的基矢函數(shù)將哈密頓算符展開成哈密頓矩陣,并通過求解 量子力學(xué)本征值問題來得到介觀的各物理量。相比較而言,該基展開哈密頓量的方法物理 意義明確,且是數(shù)值精確的,只要基矢的數(shù)目足夠多,所得到的結(jié)果將是嚴(yán)格的。
[0004] 在實(shí)際計(jì)算過程中,根據(jù)所研究介觀體系的拓?fù)浣Y(jié)構(gòu)特點(diǎn),人們往往選用不同的 基矢以達(dá)到最快速收斂的目的。常用的基矢有:平面波型基矢、勒讓德型基矢、貝塞爾基矢、 拉蓋爾基矢等等。為了使計(jì)算的結(jié)果盡可能的精確或計(jì)算體系的需求,實(shí)際往往需要大量 的基矢(設(shè)為M),但隨著基矢數(shù)目的增多,哈密頓矩陣的規(guī)模也急劇的擴(kuò)大(M2),從而導(dǎo)致 哈密頓矩陣的初始化工作繁重,甚至于計(jì)算中絕大部分的時(shí)間都將花費(fèi)在哈密頓矩陣元的 初始化計(jì)算上。如果我們可以加速哈密頓矩陣元的初始化,那么整個(gè)計(jì)算并不會(huì)花費(fèi)太多 的時(shí)間。此外,為了能精確的反映介觀體系的物理特性,我們往往需要從能帶上著手研究, 而波矢(或磁場、電場等外場)間的計(jì)算相對獨(dú)立,通信較少。因此,如何加速哈密頓矩陣元 初始化和并行化能帶計(jì)算是本發(fā)明所要解決的主要問題。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的目的是克服現(xiàn)有技術(shù)中存在的不足,提供一種利用OPENMP和MPI混合加 速量子介觀體系求解的方法。
[0006] 本發(fā)明的技術(shù)方案是按以下方式實(shí)現(xiàn)的,將介觀物理體系能帶計(jì)算中的波矢獨(dú)立 出來,并使用MPI進(jìn)程并行來實(shí)現(xiàn)。然后將每個(gè)MPI進(jìn)程中的哈密頓量矩陣元初始化,交由 多核處理器間的并行線程完成,這部分由OpenMP來實(shí)現(xiàn)。之后再調(diào)用并行數(shù)學(xué)庫實(shí)現(xiàn)對矩 陣本征值的求解。最后,將計(jì)算的結(jié)果歸約到MPI主進(jìn)程上并輸出,從而有效加速介觀物理 問題求解的計(jì)算; 組織流程如下: (1) 寫出介觀體系物理問題的體系哈密頓量,選擇合適的基矢展開哈密頓算符,給出哈 密頓矩陣元的表達(dá)式; (2) 根據(jù)能帶計(jì)算的波矢數(shù)目,使用MPI并行化每個(gè)波矢點(diǎn)的計(jì)算; (3) 使用OpenMP隱語對哈密頓矩陣元初始化計(jì)算的兩重循環(huán)并行化,其中可能需要 考慮到一些循環(huán)體內(nèi)變量的私有性,并根據(jù)每個(gè)線程的計(jì)算量和處理器的計(jì)算能力調(diào)整 OpenMP線程的負(fù)載平衡; (4) 對完成初始化計(jì)算的給定波矢下的哈密頓矩陣元做對角化操作,該部分可以調(diào)用 第三方數(shù)學(xué)庫,且有些數(shù)學(xué)庫已經(jīng)做到了對矩陣對角化計(jì)算的并行化; (5) 在完成每個(gè)波矢點(diǎn)的能級計(jì)算后,使用MPI函數(shù)將結(jié)果歸約到MPI主進(jìn)程,并按指 定的格式輸出; (6) 成計(jì)算得到能譜。
[0007] 利用能帶波矢間的相對獨(dú)立性,將每個(gè)或數(shù)個(gè)波矢點(diǎn)的計(jì)算交由MPI進(jìn)程來完 成。
[0008] 對二維的哈密頓量元的初始化OpenMP化,并充分考慮到線程間的負(fù)載平衡性。
[0009] 將計(jì)算的結(jié)果歸約到MPI主進(jìn)程,是指將各個(gè)MPI進(jìn)程中所完成計(jì)算的波矢點(diǎn)上 的能級值,通過MPI歸約函數(shù)歸約到指定的MPI主進(jìn)程上,并將計(jì)算的最終結(jié)果以指定的形 式輸出。
[0010] 本發(fā)明針對介觀問題中哈密頓矩陣元基矢展開計(jì)算的特點(diǎn),將計(jì) 算過程分為兩個(gè)主要方面:初始化哈密頓量矩陣元(即使用基矢展開哈密頓 量算符)和能帶計(jì)算。對于前者由于需要初始化的矩陣元數(shù)目相對較大( M XM個(gè)),要求較多的計(jì)算資源和較高的存儲(chǔ)器帶寬,而每一個(gè)矩陣元的計(jì)算量并不算太 大,因此該部分屬于細(xì)粒度計(jì)算,比較適用于在多核處理器上使用多線程來完成。OpenMP適 合處理此類問題。對于后者,即能帶計(jì)算,是各個(gè)波矢(或磁場、電場等外場)間相對獨(dú)立的 計(jì)算,它們之間并不需要太多的通信,因此比較適合使用MPI在節(jié)點(diǎn)間并行處理。這樣即使 在網(wǎng)絡(luò)比較差的情況下,如千兆以太網(wǎng),也可以擁有相當(dāng)不錯(cuò)的擴(kuò)展性和效率。
[0011] 本發(fā)明的優(yōu)點(diǎn)是: 本發(fā)明的一種利用OPENMP和MPI混合加速量子介觀體系求解的方法和現(xiàn)有技術(shù)相比, 充分發(fā)揮多核處理器的強(qiáng)大計(jì)算能力,并有效回避節(jié)點(diǎn)間通信帶寬低和延遲高的不足,進(jìn) 而極大的提高介觀物理問題在現(xiàn)代高性能計(jì)算集群上的計(jì)算速度和擴(kuò)展性,大幅縮短對介 觀體系的計(jì)算模擬時(shí)間。
【專利附圖】
【附圖說明】
[0012] 圖1為一種利用OPENMP和MPI混合加速量子介觀體系求解的方法的流程圖。
[0013] 實(shí)施方式 下面結(jié)合附圖對本發(fā)明的一種利用OPENMP和MPI混合加速量子介觀體系求解的方法 作以下詳細(xì)說明。
[0014] 如圖1所示,本發(fā)明的一種利用OPENMP和MPI混合加速量子介觀體系求解的方 法,將介觀物理體系能帶計(jì)算中的波矢獨(dú)立出來,并使用MPI進(jìn)程并行來實(shí)現(xiàn)。然后將每 個(gè)MPI進(jìn)程中的哈密頓量矩陣元初始化,交由多核處理器間的并行線程完成,這部分由 OpenMP來實(shí)現(xiàn)。之后再調(diào)用并行數(shù)學(xué)庫實(shí)現(xiàn)對矩陣本征值的求解。最后,將計(jì)算的結(jié)果歸 約到MPI主進(jìn)程上并輸出,從而有效加速介觀物理問題求解的計(jì)算。
[0015] 組織流程如下: (1) 寫出介觀體系物理問題的體系哈密頓量,選擇合適的基矢展開哈密頓算符,給出哈 密頓矩陣元的表達(dá)式; (2) 根據(jù)能帶計(jì)算的波矢(外場)數(shù)目,使用MPI并行化每個(gè)波矢(外場)點(diǎn)的計(jì)算; (3) 使用OpenMP隱語對哈密頓矩陣元初始化計(jì)算的兩重循環(huán)并行化,其中可能需要 考慮到一些循環(huán)體內(nèi)變量的私有性,并根據(jù)每個(gè)線程的計(jì)算量和處理器的計(jì)算能力調(diào)整 OpenMP線程的負(fù)載平衡; (4) 對完成初始化計(jì)算的給定波矢下的哈密頓矩陣元做對角化操作。該部分可以調(diào)用 第三方數(shù)學(xué)庫,且有些數(shù)學(xué)庫已經(jīng)做到了對矩陣對角化計(jì)算的并行化(如MKL等); (5) 在完成每個(gè)波矢(外場)點(diǎn)的能級計(jì)算后,使用MPI函數(shù)將結(jié)果歸約到MPI主進(jìn)程, 并按指定的格式輸出; (6) 成計(jì)算得到能譜,或根據(jù)上一步解出的結(jié)果計(jì)算其他物理量。
[0016] 利用能帶波矢間的相對獨(dú)立性,將每個(gè)或數(shù)個(gè)波矢點(diǎn)的計(jì)算交由MPI進(jìn)程來完 成。
[0017] 將每個(gè)MPI進(jìn)程中的哈密頓量矩陣元初始化,交由多核處理器間的并行線程完 成,對二維的哈密頓量元的初始化。
[0018] 本發(fā)明的一種利用OPENMP和MPI混合加速量子介觀體系求解的方法其加工制作 非常簡單方便,按照說明書附圖所示即可加工。
[0019] 除說明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
【權(quán)利要求】
1. 一種利用OPENMP和MPr混合加速量子介觀體系求解的方法,其特征在于將介觀物理 體系能帶計(jì)算中的波矢獨(dú)立出來,并使用MPI進(jìn)程并行來實(shí)現(xiàn);然后將每個(gè)MPI進(jìn)程中的哈 密頓量矩陣元初始化,交由多核處理器間的并行線程完成,這部分由OpenMP來實(shí)現(xiàn);之后 再調(diào)用并行數(shù)學(xué)庫實(shí)現(xiàn)對矩陣本征值的求解;最后,將計(jì)算的結(jié)果歸約到MPI主進(jìn)程上并 輸出,從而有效加速介觀物理問題求解的計(jì)算; 組織流程如下: (1) 寫出介觀體系物理問題的體系哈密頓量,選擇合適的基矢展開哈密頓算符,給出哈 密頓矩陣元的表達(dá)式; (2) 根據(jù)能帶計(jì)算的波矢數(shù)目,使用MPI并行化每個(gè)波矢點(diǎn)的計(jì)算; (3) 使用OpenMP隱語對哈密頓矩陣元初始化計(jì)算的兩重循環(huán)并行化,其中可能需要 考慮到一些循環(huán)體內(nèi)變量的私有性,并根據(jù)每個(gè)線程的計(jì)算量和處理器的計(jì)算能力調(diào)整 OpenMP線程的負(fù)載平衡; (4) 對完成初始化計(jì)算的給定波矢下的哈密頓矩陣元做對角化操作,該部分可以調(diào)用 第三方數(shù)學(xué)庫,且有些數(shù)學(xué)庫已經(jīng)做到了對矩陣對角化計(jì)算的并行化; (5) 在完成每個(gè)波矢點(diǎn)的能級計(jì)算后,使用MPI函數(shù)將結(jié)果歸約到MPI主進(jìn)程,并按指 定的格式輸出; (6) 成計(jì)算得到能譜。
2. 根據(jù)權(quán)利要求1所述的一種利用OPENMP和MPI混合加速量子介觀體系求解的方法, 其特征在于利用能帶波矢間的相對獨(dú)立性,將每個(gè)或數(shù)個(gè)波矢點(diǎn)的計(jì)算交由MPI進(jìn)程來完 成。
3. 根據(jù)權(quán)利要求1所述的一種利用OPENMP和MPI混合加速量子介觀體系求解的方法, 其特征在于對二維的哈密頓量元的初始化OpenMP化,并充分考慮到線程間的負(fù)載平衡性。
【文檔編號】G06F17/10GK104391822SQ201410718008
【公開日】2015年3月4日 申請日期:2014年12月3日 優(yōu)先權(quán)日:2014年12月3日
【發(fā)明者】劉羽 申請人:浪潮集團(tuán)有限公司