国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種利用gpu加速介觀體系物理問題求解的方法

      文檔序號:6368807閱讀:223來源:國知局
      專利名稱:一種利用gpu加速介觀體系物理問題求解的方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及高性能計(jì)算領(lǐng)域在計(jì)算物理學(xué)和納米材料科學(xué)方面的應(yīng)用,具體涉及ー種利用GPU來加速介觀體系物理問題求解中的大規(guī)模哈密頓(Hamiltonian)矩陣初始化計(jì)算,來求解微、納電子結(jié)構(gòu)的方法。具體地說是ー種利用GPU加速量子介觀體系求解的方法。
      背景技術(shù)
      隨著人類社會(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è)納米,已處理介觀體系的范疇。通過對介觀物理體系的研究,一方面可以給出現(xiàn)有器件尺寸減小的下限,此時(shí)原來的理論分析方法,諸如歐姆定律等均已不再適用;另一方面,新發(fā)現(xiàn)的物理現(xiàn)象也為制作新型量子器件及新型材料提供了物理學(xué)基礎(chǔ),如量子點(diǎn)激光器等。一般說來屬于介觀范疇的物理體系種類很多,包括量子點(diǎn)(也稱作人造原子)、量子環(huán)、納米線、納米彈簧等等。實(shí)現(xiàn)從理論上對這些介觀物理體系的研究和計(jì)算對實(shí)驗(yàn)研究以及量子器件的制備具有重要的現(xiàn)實(shí)意義。自上個(gè)世紀(jì)量子力學(xué)理論誕生以來,人們逐步發(fā)展了諸如絕熱近似、哈特里近似、哈特里-福克近似(Hartree-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)格的。在實(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í)間。因此,如何加速哈密頓矩陣元初始化是本發(fā)明所要解決的主要問題。

      發(fā)明內(nèi)容
      本發(fā)明的目的是設(shè)計(jì)ー種利用GPU來加速介觀體系物理問題哈密頓量矩陣元基矢展開求解的方法,從而充分發(fā)揮GPU眾核結(jié)構(gòu)的多計(jì)算處理單元、高帶寬優(yōu)勢,以及CPU的邏輯處理能力和主內(nèi)存的大容量優(yōu)勢,來大幅縮短對介觀體系的計(jì)算模擬時(shí)間。本發(fā)明的目的是按以下方式實(shí)現(xiàn)的,針對基矢展開計(jì)算的特點(diǎn),將計(jì)算過程分為兩個(gè)主要步驟初始化哈密頓量矩陣元和哈密頓矩陣對角化,對于初始化哈密頓量矩陣元,由于需要初始化的矩陣元數(shù)目相對較大,要求較多的計(jì)算資源和較高的存儲(chǔ)器帶寬,而相應(yīng)的對存儲(chǔ)器的容量需求較小,因此我們將這部分計(jì)算移植到GPU上來完成,而即哈密頓矩陣對角化,是對整個(gè)哈密頓矩陣的歸約操作,它需要占用大量的內(nèi)存資源,并且由于矩陣各部分的依賴關(guān)系,大部分時(shí)間是做串行處理,因此我們將其交給CPU來完成,將介觀物理體系哈密頓量矩陣元獨(dú)立出來,然后將由這些獨(dú)立的矩陣元所構(gòu)成的問題解空間同GPU中的線程空間相對應(yīng),將內(nèi)存中的初始參數(shù)傳入GPU設(shè)備顯存,并在設(shè)備上計(jì)算矩陣元,完畢后拷貝結(jié)果回主機(jī)內(nèi)存,從而完成介觀體系哈密頓量矩陣初始化,再利用CPU對哈密頓矩陣對角化求得本征能量和本征態(tài)矢,從而有效加速介觀物理問題求解的計(jì)算,具體步驟如下 1)將問題解空間同GPU線程空間相對應(yīng),利用哈密頓量矩陣元之間的非相關(guān)性,將矩陣元與CUDA的三重線程模型對應(yīng)起來,即同Grid,Block, Thread對應(yīng)起來,問題的規(guī)模與計(jì)算中所使用的基矢數(shù)目有夫;
      2)將參數(shù)傳入顯存并執(zhí)行運(yùn)算,將基矢系數(shù)等參數(shù)傳遞給顯存,包括與所使用基矢有關(guān)的貝塞爾零點(diǎn),并將少數(shù)調(diào)用頻繁的參數(shù)存放在緩存中,執(zhí)行設(shè)備端的kernel函數(shù)完成計(jì)算;
      3)対角化哈密頓矩陣,是利用步驟2)生成結(jié)果完成哈密頓矩陣的初始化工作,并在CPU上調(diào)用Lapack數(shù)學(xué)庫來完成計(jì)算;
      給出了本發(fā)明所涉及的問題空間與GPU中計(jì)算線程的對應(yīng)關(guān)系,使用勒讓德(
      PjT )、貝塞爾(J m)或拉蓋爾(LS)多項(xiàng)式作為基矢|n, m >至少含有兩個(gè)指標(biāo)n, m需要遍例,因此每ー個(gè)哈密頓矩陣元<pq_|nm>含有四個(gè)指標(biāo)維度,因此認(rèn)為介觀體系的問題空間是
      四維的,我們將哈密頓矩陣元H(q,p,n,m)構(gòu)成我們的問題空間;
      按現(xiàn)行的CUDA架構(gòu),把GPU的線程空間劃分為grid, block和thread三重結(jié)構(gòu),簡單起見,直接把問題空間的(q, P)變量與block聯(lián)系起來,(n, m)與thread聯(lián)系起來,即block(q, p)和thread(n, m),由于各哈密頓矩陣元之間并無相互作用,也就是說block及thread之間無需數(shù)據(jù)通信,因此問題空間到線程的簡單映射可行且高效;
      基本程序架構(gòu)和組織流程如下
      1)寫出介觀體系物理問題的體系哈密頓量,選擇合適的基矢展開哈密頓算符,給出哈密頓矩陣元的表達(dá)式;
      2)分離哈密頓矩陣元H(q,p, n, m);
      3)根據(jù)問題空間(H(q,p, n, m))組合規(guī)律劃分計(jì)算網(wǎng)格(gridO、block(q, p)、thread (n, m)),傳遞輸入?yún)?shù)到顯存,并將計(jì)算中需要頻繁訪問的參數(shù)放到GPU的共享存儲(chǔ)器中(shared memory);4)調(diào)用設(shè)備端函數(shù),計(jì)算哈密頓矩陣元,并將各線程對應(yīng)的結(jié)果存放到顯存中;
      5)將計(jì)算完成的矩陣元從顯存拷貝到內(nèi)存中;
      6)生成哈密頓矩陣,在CPU上做矩陣對角化操作;
      7)完成計(jì)算得到能譜或根據(jù)上一歩解出的結(jié)果計(jì)算其他物理量。本發(fā)明的有益效果是本發(fā)明所采用的算法可以極大的加速介觀物理體系問題的求解速度,且算法簡單,比較易于實(shí)現(xiàn)和擴(kuò)展,可以極大的利用有限的計(jì)算資源加速半導(dǎo)體、材料和納米等科學(xué)方面的研究,并且還比較節(jié)能。本發(fā)明提供ー種利用GPU來加速計(jì)算物理學(xué)、材料物理和納米科學(xué)中被廣泛研究的介觀體系,如量子點(diǎn)、量子環(huán)、納米線,等物理問題的計(jì)算求解。本發(fā)明簡單、實(shí)用,可以方便而有效的加速介觀物理問題的求解過程,對介觀體系的研究工作具有實(shí)際的應(yīng)用意義。


      圖I是問題空間與GPU計(jì)算線程的對應(yīng)關(guān)系;
      圖2是計(jì)算方法流程圖。
      具體實(shí)施例方式參照說明書附圖對本發(fā)明的方法作以下詳細(xì)地說明
      本發(fā)明針對基矢展開計(jì)算的特點(diǎn),將計(jì)算過程分為兩個(gè)主要步驟初始化哈密頓量矩陣元(即使用基矢展開哈密頓量算符)和哈密頓矩陣對角化。對于前者由于需要初始化的矩
      陣元數(shù)目相對較大(MXM個(gè)),要求較多的計(jì)算資源和較高的存儲(chǔ)器帶寬,而相應(yīng)的對存
      儲(chǔ)器的容量需求較小,因此我們可以將這部分計(jì)算移植到GPU上來完成。而后者,即哈密頓矩陣對角化,是對整個(gè)哈密頓矩陣的歸約操作,它需要占用大量的內(nèi)存資源,并且由于矩陣各部分的依賴關(guān)系,大部分時(shí)間是做串行處理,因此我們將其交給CPU來完成。具體來說,大體可分為如下幾個(gè)內(nèi)容
      1.劃分問題空間;
      2.拷貝輸入?yún)?shù)到設(shè)備存儲(chǔ)器(顯存);
      3.設(shè)備端計(jì)算(GPU);
      4.返回計(jì)算結(jié)果;
      5.生成哈密頓量矩陣;
      6.哈密頓矩陣對角化。
      實(shí)施例為了使本發(fā)明的目的、技術(shù)方案和優(yōu)勢敘述清晰,結(jié)合附圖,對本發(fā)明中的關(guān)鍵步驟進(jìn)行詳細(xì)說明。如附圖I所示,給出了本發(fā)明所涉及的問題空間與GPU中計(jì)算線程的對應(yīng)關(guān)系。一般來講,使用勒讓德(Pf1 )、貝塞爾(J=)或拉蓋爾(L:)多項(xiàng)式作為基矢Ιη,πι >至少含有兩個(gè)指標(biāo)n,m需要適例,因此每ー個(gè)哈密頓矩陣元含有四個(gè)指標(biāo)維度,因此可以認(rèn)
      為介觀體系的問題空間是四維的。我們將哈密頓矩陣元H(q,p,n,m)構(gòu)成我們的問題空間。按現(xiàn)行的CUDA架構(gòu),把GPU的線程空間劃分為grid,block和thread三重結(jié)構(gòu),簡單起見,可以直接把問題空間的(q, P)變量與block聯(lián)系起來,(n, m)與thread聯(lián)系起來,即block(q, p)和thread(n, m)。由于各哈密頓矩陣元之間并無相互作用,也就是說block及thread之間無需數(shù)據(jù)通信,因此附圖I所示的問題空間到線程的簡單映射可行且聞效。附圖2為本發(fā)明算法的具體流程圖?;镜某绦蚣軜?gòu)和組織流程為
      1.寫出介觀體系物理問題的體系哈密頓量,選擇合適的基矢展開哈密頓算符,給出哈密頓矩陣元的表達(dá)式;
      2.如附圖I所示,分離哈密頓矩陣元H(q,p, n, m);
      3.根據(jù)問題空間(H(q,p, n, m))組合規(guī)律劃分計(jì)算網(wǎng)格(gridO、block(q, p)、thread(n, m)),傳遞輸入?yún)?shù)到顯存,并將計(jì)算中需要頻繁訪問的參數(shù)放到GPU的共享存儲(chǔ)器中(shared memory);
      4.調(diào)用設(shè)備端函數(shù)(kernel函數(shù))計(jì)算哈密頓矩陣元,并將各線程對應(yīng)的結(jié)果存放到顯存中;
      5.將計(jì)算完成的矩陣元從顯存拷貝到內(nèi)存中;
      6.生成哈密頓矩陣,在CPU上做矩陣對角化操作;
      7.完成計(jì)算得到能譜,或根據(jù)上一歩解出的結(jié)果計(jì)算其他物理量。本發(fā)明的方法,充分剖析了組態(tài)相互作用算法的計(jì)算負(fù)載特點(diǎn),并充分利用了計(jì)算機(jī)中的各種計(jì)算資源,大幅加速了使用基矢展開的方法對介觀體系的精確模擬計(jì)算。并且使得以往需要借助大型超級計(jì)算機(jī)才能完成的計(jì)算輕松的轉(zhuǎn)移到桌面等個(gè)人超算平臺(tái)上,極大的方便了研究人員對微、納體系做更深入的探索和發(fā)現(xiàn)。除說明書所述的技術(shù)特征外,均為本專業(yè)技術(shù)人員的已知技術(shù)。
      權(quán)利要求
      1.ー種利用GPU加速介觀體系物理問題求解的方法,其特征在于針對基矢展開計(jì)算的特點(diǎn),將計(jì)算過程分為兩個(gè)主要步驟初始化哈密頓量矩陣元和哈密頓矩陣對角化,對于初始化哈密頓量矩陣元,由于需要初始化的矩陣元數(shù)目相對較大,要求較多的計(jì)算資源和較高的存儲(chǔ)器帶寬,而相應(yīng)的對存儲(chǔ)器的容量需求較小,因此我們將這部分計(jì)算移植到GPU上來完成,而即哈密頓矩陣對角化,是對整個(gè)哈密頓矩陣的歸約操作,它需要占用大量的內(nèi)存資源,并且由于矩陣各部分的依賴關(guān)系,大部分時(shí)間是做串行處理,因此我們將其交給(PU來完成,將介觀物理體系哈密頓量矩陣元獨(dú)立出來,然后將由這些獨(dú)立的矩陣元所構(gòu)成的問題解空間同GPU中的線程空間相對應(yīng),將內(nèi)存中的初始參數(shù)傳入GPU設(shè)備顯存,并在設(shè)備上計(jì)算矩陣元,完畢后拷貝結(jié)果回主機(jī)內(nèi)存,從而完成介觀體系哈密頓量矩陣初始化,再利用CPU對哈密頓矩陣対角化求得本征能量和本征態(tài)矢,從而有效加速介觀物理問題求解的計(jì)算,具體步驟如下 I)將問題解空間同GPU線程空間相對應(yīng),利用哈密頓量矩陣元之間的非相關(guān)性,將矩陣元與CUDA的三重線程模型對應(yīng)起來,即同Grid,Block, Thread對應(yīng)起來,問題的規(guī)模與計(jì)算中所使用的基矢數(shù)目有夫; 將參數(shù)傳入顯存并執(zhí)行運(yùn)算,將基矢系數(shù)等參數(shù)傳遞給顯存,包括與所使用基矢有關(guān)的貝塞爾零點(diǎn),并將少數(shù)調(diào)用頻繁的參數(shù)存放在緩存中,執(zhí)行設(shè)備端的kernel函數(shù)完成計(jì)算; 3)対角化哈密頓矩陣,是利用步驟2)生成結(jié)果完成哈密頓矩陣的初始化工作,并在CPU上調(diào)用Lapack數(shù)學(xué)庫來完成計(jì)算; 給出了本發(fā)明所涉及的問題空間與GPU中計(jì)算線程的對應(yīng)關(guān)系,使用勒讓德(ΡΓ )、貝塞爾(If )或拉蓋爾CL")多項(xiàng)式作為基矢In, m >至少含有兩個(gè)指標(biāo)n, m需要遍例,因此每ー個(gè)哈密頓矩陣元<pq|H|nm>含有四個(gè)指標(biāo)維度,因此認(rèn)為介觀體系的問題空間是四維的,我們將哈密頓矩陣元Η(^P, η,m)構(gòu)成我們的問題空間; 按現(xiàn)行的CUDA架構(gòu),把GPU的線程空間劃分為grid, block和thread三重結(jié)構(gòu),簡單起見,直接把問題空間的(q, P)變量與block聯(lián)系起來,(n, m)與thread聯(lián)系起來,即block(q, p)和thread(n, m),由于各哈密頓矩陣元之間并無相互作用,也就是說block及thread之間無需數(shù)據(jù)通信,因此問題空間到線程的簡單映射可行且高效; 基本程序架構(gòu)和組織流程如下 1)寫出介觀體系物理問題的體系哈密頓量,選擇合適的基矢展開哈密頓算符,給出哈密頓矩陣元的表達(dá)式; 2)分離哈密頓矩陣元H(q,p, n, m); 3)根據(jù)問題空間(H(q,p, n, m))組合規(guī)律劃分計(jì)算網(wǎng)格(gridO、block(q, p)、thread (n, m)),傳遞輸入?yún)?shù)到顯存,并將計(jì)算中需要頻繁訪問的參數(shù)放到GPU的共享存儲(chǔ)器中(shared memory); 4)調(diào)用設(shè)備端函數(shù),計(jì)算哈密頓矩陣元,并將各線程對應(yīng)的結(jié)果存放到顯存中;5)將計(jì)算完成的矩陣元從顯存拷貝到內(nèi)存中;6)生 成哈密頓矩陣,在CPU上做矩陣對角化操作;7)完成計(jì)算得到能譜或根據(jù)上一歩解出的結(jié)果計(jì)算其他物理量。
      全文摘要
      本發(fā)明提供一種利用GPU加速介觀體系物理問題求解的方法,該方法充分利用了GPU所擁有的超強(qiáng)的浮點(diǎn)計(jì)算能力和較大的內(nèi)存帶寬等眾核處理器的特點(diǎn),將介觀問題求解中占用機(jī)時(shí)最長的哈密頓量矩陣初始化計(jì)算工作交給GPU協(xié)處理,而傳統(tǒng)的矩陣對角化的工作依然由串行計(jì)算能力較強(qiáng)的CPU來完成,從而實(shí)現(xiàn)介觀物理問題求解的加速。在計(jì)算過程中,我們利用哈密頓量矩陣元計(jì)算相對獨(dú)立的特點(diǎn),實(shí)現(xiàn)了從問題空間到GPU線程空間的簡單映射,從而保證了算法的易用性和高可擴(kuò)展性。
      文檔編號G06F17/50GK102663207SQ20121012899
      公開日2012年9月12日 申請日期2012年4月28日 優(yōu)先權(quán)日2012年4月28日
      發(fā)明者劉羽 申請人:浪潮電子信息產(chǎn)業(yè)股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1