• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于CUDA的有限元矩陣并行裝配算法研究

    2020-06-29 08:29:02胡斌星李新國
    計算力學學報 2020年3期
    關鍵詞:共享內(nèi)存線程全局

    胡斌星,李新國,孫 鵬

    (1.西北工業(yè)大學 航天學院,西安 710072;2.西北工業(yè)大學 空天飛行技術研究所,西安 710072)

    1 引 言

    隨著航天運載器廣泛采用輕質復合材料和升力體的氣動布局等因素,其剛體和彈性體的模態(tài)耦合問題愈發(fā)突出[1]。傳統(tǒng)的方法是將箭體視為柔性梁分析[2,3],將助推器也視為一維梁與芯級組成空間梁系,基于特定的小偏差增量模型分析彈性振動對控制系統(tǒng)的影響[4]。而在高超聲速飛行器的分析中也常以均勻分布質量的自由梁[5]或懸臂梁[6]建模來分析其與氣動和推進系統(tǒng)的耦合關系。隨著現(xiàn)代航天理論與相關行業(yè)技術的推進,航天運載器技術從一次性運載火箭向可重復使用運載器過渡,同時對新一代飛行器提出重復使用、健康監(jiān)測、故障診斷和任務重構的要求。將彈性問題從三維空間簡化為平面問題雖克服了計算的困難,在工程上也得到了驗證,但在很多情況下,這種簡化將會導致較大的誤差。如飛行器在飛行過程中產(chǎn)生滾轉時,需考慮結構的扭轉彎曲作用;簡化的非均質梁在載荷不均勻時,按平面柔性梁進行簡化誤差較大[7];簡單的一維梁模型解析解無法模擬運載器各部位的應力應變以實現(xiàn)健康監(jiān)測,也無法通過傳感器所測的結構損傷程度計算當前極限過載以重構制導指令,無法達成任務重構的目的。

    限制采用有限元模型的因素主要是其仿真計算速度較慢,且單元剛度矩陣、組裝和總剛度矩陣的計算均較為耗時,尤其當飛行器本身構建單元數(shù)量較大時,無法在一個或幾個制導周期內(nèi)完成結構強度的校核。目前,GPU計算在有限元分析中的應用尚處于初級階段[8]。許棟等[9]針對淺水問題利用GPU完成了多達112倍的加速比,并對核函數(shù)參數(shù)進行了優(yōu)化分析;曾良等[10]通過共享內(nèi)存邊界的迭代法,實現(xiàn)了流體計算的加速問題;Cecka等[11]針對熱傳導問題的有限元并行組裝進行了深入研究;Dinh等[12]則對GPU的有限元實時仿真問題做了一定研究,并總結了COO(Coordinate)格式下的單元組裝問題;Dziekonski等[13]討論了在多GPU環(huán)境下,大型系數(shù)線性方程的生成問題。

    本文結合目前主流飛行器構型,利用GPU浮點運算能力極強的特點,著重從單元剛度矩陣的并行組裝方面進行詳細研究及設計,為實際的飛行仿真及任務提供技術驗證。

    2 有限元矩陣并行裝配算法設計

    在有限元法求解步驟中,單元剛度矩陣完成計算后下一步就是裝配總剛度矩陣,建立總平衡方程組以求解節(jié)點位移。當節(jié)點數(shù)目較多時,總剛度矩陣的階數(shù)也較大,由于計算機內(nèi)存的容量限制,有可能無法按照傳統(tǒng)方法進行存儲,在ANSYS中采用波前法[13],即邊分析邊消去以避免總剛度矩陣的生成。不過鑒于波前法需頻繁交換CPU緩存和內(nèi)存的數(shù)據(jù),限于內(nèi)存帶寬,在求解較大規(guī)模問題時往往較為費時[14]。同時,由于存在大量的內(nèi)存拷貝和索引量操作,裝配步驟在大型有限元模型的整體求解耗時中也占有相當比重。下文在內(nèi)存能夠完全容納總剛度矩陣的假設下,設計總剛度矩陣的并行算法。

    2.1 有限元矩陣裝配并行性分析

    總剛度矩陣根據(jù)單元類型的不同分別計算每個單元局部坐標下的剛度矩陣,經(jīng)局部坐標系下的單元剛度矩陣轉換到整體坐標系下后對號入座完成裝配。

    [K]=∑[Ke]

    (1)

    由于鄰近單元共用某個節(jié)點,且可能在單元剛度矩陣中的位置一樣,則總剛度矩陣的裝配不能單純以單元向量形式并行化,否則可能出現(xiàn)相同地址的訪問沖突,進而造成計算結果錯誤。當且僅當每步并行裝配沒有共同節(jié)點的若干個單元的剛度矩陣,或至少保證每步中所有單元矩陣在總剛度矩陣中的位置不一時,并行裝配才得以實現(xiàn)。從實際出發(fā),有如下方案。

    (1)每次同時裝配一個單元剛度矩陣中多個位置的元素。

    (2)每次同時裝配若干個單元剛度矩陣中同一位置的元素。

    (3)每次同時裝配若干個單元剛度矩陣中若干位置的元素。

    在單元剛度矩陣計算階段,每步均是以長度為r的向量形式對單元剛度矩陣中的某個子塊的某一處元素并行計算,由此可推斷每步裝配能同時計算r個單元的分塊單元剛度矩陣中塊[Ki,j]中(p,q)處的元素。而當r為單元總數(shù)時,并行裝配的每一步即為疊加所有單元的單元剛度矩陣中同一位置的元素。于是可提出,在何種情況下可同時裝配所有單元剛度矩陣同一位置處的元素滿足訪問沖突的要求,即如何保證總剛度矩陣中所有位置的元素在每一步裝配中均只受一個單元影響。結合GPU架構,適用于其SIMD架構的組裝算法應添加以下幾點關鍵思路。

    (1)將任務分成若干個相互獨立的子塊,子塊間應不存在對同一地址的訪存沖突。

    (2)盡量減少全局內(nèi)存的數(shù)據(jù)傳輸量,且盡量滿足內(nèi)存的合并訪問,提高分級內(nèi)存體系下的數(shù)據(jù)重用和訪問效率。

    (3)平衡數(shù)值計算和數(shù)據(jù)流間的效率。

    (4)盡量優(yōu)化每個線程塊內(nèi)線程數(shù)和流處理器內(nèi)的可用線程塊數(shù)目。

    基于CUDA的并行組裝算法的難點在于,如何保證單元核函數(shù)高效地獲取節(jié)點數(shù)據(jù)并將單元數(shù)據(jù)組裝至系統(tǒng)方程。合并讀取和寫入全局內(nèi)存并且避免共享內(nèi)存訪存沖突在沒有顯著耗時的輸入數(shù)據(jù)重構的條件下幾乎不可避免。此外,通常多個單元共享某一個節(jié)點,則說明其共享自由度,故在整個并行計算中應該盡量避免全局同步機制和原子操作以期避免競態(tài)條件[15]。在此之前,文獻[16,17]介紹了FEM中稀疏矩陣的并行組裝問題,提出每個線程對應計算系統(tǒng)方程Ax=F的每一個非零值,以避免競態(tài)條件;然而,該方法需要每個線程計算單元子程序并從每個貢獻單元的數(shù)據(jù)中提取相關條目,因此,該做法會導致很多的冗余計算。如果ef是每個單元的自由度數(shù),則單元子程序需要調(diào)用(ef+1)ef次(前一項表示對每個非對稱矩陣 中的非零項,后一項表示在Ae的非零項)。盡管單元特征矩陣的計算過程因單元特性而異可能計算開銷并不大,但多次從全局內(nèi)存中檢索單元子程序所需的節(jié)點數(shù)據(jù),而非以合并訪問的方式進行,則時間開銷非常大。

    考慮組裝算法的通用性,暫且認定單元矩陣的形式不一,僅認為單元子程序作為黑箱在每個線程或線程塊內(nèi)運行,實現(xiàn)組裝過程與單元特征矩陣計算的分割獨立。文獻[18]表明,該方案適宜于低階單元并取得了較好的加速比,同時基于該思路針對高階單元的優(yōu)化在文獻[19]中也已有闡述。則在確定單元特征矩陣與裝配過程解耦后,即確定裝配形式,即GPU內(nèi)的線程或線程塊與矩陣中元素間的關聯(lián),如某一個某一行(列)、非零元素或非零項子集等。同時,考慮可用的GPU資源,由于其包含了三種分級內(nèi)存系統(tǒng)[20],可得到如下基于GPU架構的典型并行方案。

    表1 數(shù)據(jù)的存儲與硬件資源的關系

    數(shù)據(jù)存儲-線程關聯(lián)的組裝策略列入表1,每種方案均有其優(yōu)劣,其中文獻[18]闡述了基于本地寄存器的NZ組裝算法、全局內(nèi)存的行組裝算法以及基于不同顏色區(qū)分的單元組裝算法。故下文主要闡述各并行裝配算法在GPU上的實現(xiàn)及優(yōu)化,其中第一部分詳細描述依照顏色劃分單元的裝配策略,保證兩個線程不會同時寫入某一相同內(nèi)存地址的具體實現(xiàn);第二部分闡述第二種算法,即將計算分為兩部分,計算所有的單元數(shù)據(jù)并存入全局內(nèi)存,接著組裝所有的單元數(shù)據(jù)至矩陣A;第三種算法較前兩種更復雜,使用了共享內(nèi)存以減少全局內(nèi)存的通信量,節(jié)點和單元皆分割成若干個子集,每個子集調(diào)用若干線程計算單元特征矩陣并計算單元在系統(tǒng)方程內(nèi)相應的位置。方案三能夠減少節(jié)點數(shù)據(jù)的總讀取量,避免了單元數(shù)據(jù)的重復執(zhí)行并減少了全局內(nèi)存的寫入量。

    2.2 并行裝配算法

    2.2.1 以顏色分組的組裝策略

    避免競態(tài)條件的直接方法是在組裝算法前對網(wǎng)格單元進行著色預處理,使得任意兩個相同顏色的單元不共享自由度,如圖1所示。盡管確定一個模型的最小著色數(shù)是一個NP(Non-deterministic Polynomial)完全問題,但已有多種啟發(fā)式算法[21,22]能夠找到近似的最小著色數(shù)。

    本文選用網(wǎng)格的對偶圖的頂點著色,其中每個單元代表圖中的節(jié)點,兩個節(jié)點若通過一條邊相連則表示兩個單元共線或者共面。需注意應保證每種顏色的單元數(shù)目盡量相近,因為在CUDA中各流的數(shù)據(jù)量和計算量盡量相同才能發(fā)揮流的最大作用[23];同時,若某種顏色的單元數(shù)量不足可能啟動較少的線程塊,進而導致GPU資源的低效使用。

    圖1 2維單元著色

    Fig.1 2-D element coloring

    在此,不妨將著色為k的單元集合寫做εk。在集合εk中單元之間不共享節(jié)點,所以不用優(yōu)化從全局顯存中讀取的每個單元的節(jié)點數(shù)據(jù)。相反,每個元素從全局內(nèi)存中檢索自己的節(jié)點數(shù)據(jù),運行單元核函數(shù)計算單元剛度和質量矩陣,并將該數(shù)據(jù)組裝至系統(tǒng)方程。則預處理每個著色的單元矩陣Ek為

    Ek(σk(e),a)=E(e,a)

    (2)

    σk:εk→{1,…,|εk|}是全局單元號至著色單元號的映射。這些矩陣放置在內(nèi)存中,線程對應單元內(nèi)存的合并訪問。每個著色為k的組裝核函數(shù)流程如下。

    (1)Tid←globalThreadID;

    (2)For alln∈[1,en]do

    (3)Nodes[n]←C(Ek(tid,n))

    (4)End for

    (5)計算(Ae,Fe)=elem(nodes)至系統(tǒng)方程

    在上述算法中,步驟(5)取決于稀疏矩陣的存儲格式。為保證程序的通用性,在此提前計算本地單元數(shù)據(jù)至目標系統(tǒng)方程的索引數(shù)組中。為保證讀取的合并訪問,數(shù)據(jù)格式安排如圖2所示。一個列主元矩陣存儲每個單元的節(jié)點號(灰色部分),其后表示每個單元數(shù)據(jù)與系統(tǒng)方程的映射關系(白色部分)。假定有一個一階線性三角單元,可知矩陣的列數(shù)為三個點的坐標數(shù)據(jù)加上6個單元特征矩陣Ae及3個等式右端的Fe項。

    2.2.2 使用全局顯存的非零項組裝策略

    該策略采用一個線程(或線程塊)計算一個有限單元數(shù)據(jù),為避免競態(tài)條件,先將單元數(shù)據(jù)寫入全局顯存以便稍后的系統(tǒng)方程構建。受GPU硬件架構的限制,全局顯存內(nèi)的單元數(shù)據(jù)在構造系統(tǒng)方程時無法執(zhí)行全局的同步操作,故組裝系統(tǒng)方程和計算單元特征矩陣需執(zhí)行兩個不同的核函數(shù)。鑒于篇幅,針對全局顯存的非零項組裝策略僅介紹單元特征矩陣的核函數(shù)并行計算部分。

    圖2 單元數(shù)據(jù)及其附加映射數(shù)據(jù)在GPU內(nèi)存存儲格式

    Fig.2 Storage format of unit data and its additional mapping data in GPU memory

    在一般情況下,因單元內(nèi)節(jié)點編號并不連續(xù),而節(jié)點結構體數(shù)組通常是按編號排序的,故通常在讀取該部分數(shù)據(jù)時無法實現(xiàn)合并訪問。在此不妨設置一個節(jié)點數(shù)據(jù)矩陣Ce,其中,Ce(e,a)是單元e的本地節(jié)點a的節(jié)點數(shù)據(jù)。如果節(jié)點數(shù)據(jù)不發(fā)生變化,則可實現(xiàn)加速;若節(jié)點數(shù)據(jù)發(fā)生變化,則Ce需在每個時步進行更新。與上述算法對比,本策略中Ce刷新需要額外的全局顯存帶寬,通常會導致計算速度更慢。故可將單元組織為若干個子集,其中子集內(nèi)的單元可以共享節(jié)點數(shù)據(jù),使得經(jīng)由全局顯存的數(shù)據(jù)傳輸總量通過預取數(shù)據(jù)實現(xiàn)線程塊內(nèi)的數(shù)據(jù)共享。在此,不妨假定εk是第k個線程塊的單元集合,計算節(jié)點集合Nk的公式為

    Nk={E(e,a)∶e∈εk(a=1,…,en)}

    (3)

    線程塊k需檢索其對應的單元子集εk,然后該單元子集所需的節(jié)點數(shù)據(jù)經(jīng)全局顯存存入共享內(nèi)存。由于GPU內(nèi)的共享內(nèi)存有大小限制,為確保核函數(shù)不會調(diào)用失敗,Nk有如下約束。

    (4)

    SharedMemSize是以字節(jié)數(shù)表示的共享內(nèi)存大小,Dn是單節(jié)點的數(shù)據(jù)大小,無論單雙精度均轉換成字節(jié)即可獲得Nk的上限。對后續(xù)章節(jié)可能存在的非線性及多步插值問題,|Dn|=nd+nf,其中nd表示坐標數(shù)據(jù)nf牛頓-辛普森迭代的中間值或多步插值中出現(xiàn)的半步長中間量。

    確定了滿足公式(4)的Nk后,即可將單元分為若干等分子集。選用圖論的劃分方法,保證每個單元是圖中的一個節(jié)點,若相應的單元間共面則在兩節(jié)點間添加一條連線。METIS[24]提供了較優(yōu)的劃分算法,保證得到一個可接受的Nk值。待Nk經(jīng)計算確定,即可將節(jié)點數(shù)據(jù)存儲至共享內(nèi)存并在單元子程序內(nèi)參與計算。對于每個線程塊k,預處理塊單元矩陣Ek定義為

    Ek(e,a)=σk(Ek(e,a))(?e∈εk,a=1,…,en)

    (5)

    式中σk∶Nk→{1,…,|Nk|}表示第k個塊內(nèi)全局節(jié)點號E(e,a)至塊節(jié)點號Ek(e,a)的映射向量,存儲在共享內(nèi)存中并用于索引節(jié)點數(shù)據(jù)。在每個線程塊k內(nèi),若干個en維元組連續(xù)存儲以便全局顯存讀取的合并訪問;待完成后便得到一個blockSise行的列主元矩陣,如圖3所示為一個en=3的示意圖。一個線程讀取索引表后即可將共享內(nèi)存內(nèi)的節(jié)點數(shù)據(jù)指向所需的單元子程序;隨后,單元子程序計算完單元特征矩陣,并將其以合并訪問的方式回傳至全局顯存。

    2.2.3 使用共享內(nèi)存的非零項組裝策略

    共享內(nèi)存較寄存器更大,其訪問延遲較全局內(nèi)存低得多,且塊內(nèi)線程間可以共享單元數(shù)據(jù)以減少子程序對數(shù)據(jù)調(diào)用的總時長,故提出塊內(nèi)線程處理某一節(jié)點子集的思路。假設N是所有節(jié)點的集合,有Nk?N,于是有單元集合εk為

    εk={e∈ε?a,E(e,a)∈Nk}

    (6)

    (7)

    (8)

    式中|Dn|是輸入節(jié)點數(shù)據(jù)的尺寸,|De|是單元子程序生成的單元數(shù)據(jù)Ae和Fe的大小。對于非線性問題,若采用高階項模擬,假定一個單元內(nèi)的任意節(jié)點有nd個自由度和nf個中間量,可推導

    |Dn|=en(nd+nf)

    (9)

    圖3en=3的列主元預處理塊單元矩陣EI

    Fig.3 Column primary element matrix ofen=3

    圖4 節(jié)點集合Nk與其對應單元集合εk

    Fig.4 Node setNk-cell setεk

    此外,|De|=ef(ef+1),該參數(shù)是本地單元矩陣Ae和力向量Fe的尺寸。考慮單元特征矩陣的對稱性,則有

    (10)

    式中n*因單元維度和形狀而異。

    同時,由于單元之間共享節(jié)點,最優(yōu)的也是最重要的優(yōu)化措施是所有的節(jié)點數(shù)據(jù)僅從全局內(nèi)存中讀取一次,否則會出現(xiàn)多個單元多次讀取某節(jié)點數(shù)據(jù),可能出現(xiàn)訪存沖突,也使得計算的實時性無法保證。因此,與全局內(nèi)存的非零組裝算法不同,在此以節(jié)點數(shù)據(jù)為導向作為源索引,其后存儲共用該節(jié)點的單元,進而形成列主元的歸約矩陣,如圖5所示。其灰色部分表示全局節(jié)點號,白色代表共用該節(jié)點的單元列表。區(qū)分兩種不同索引的方式參考了Cris等[11]的策略,為區(qū)分這兩部分整數(shù)索引,通過反碼再減1的方式表示目標索引,通過加1表示目標源索引;程序內(nèi)每個線程先判斷整數(shù)的正負號,依據(jù)正負號區(qū)分兩種索引類型。隨著線程依次讀取列表內(nèi)數(shù)據(jù),將所有指向源向量S的數(shù)據(jù)累加并存儲至目標向量T的目標索引,如下,

    (1)Fori:NZ_Reduction

    (2)Ifi>0

    (3)t←t+S[i-1]

    (4)else ifi<0

    (5)T[-i-1]←t

    (6)End if

    (7)End for

    其組裝方式如圖6所示。對于常用的低階單元,其單元矩陣尺寸較小,輔以節(jié)點為索引作為輸入量,使得劃分的單元集合尺寸較大,理論效率較高。可以看出,在預處理階段如果Nk內(nèi)部分或所有節(jié)點號連續(xù),有些全局內(nèi)存的讀取也是可以合并訪問的。同時,為避免共享內(nèi)存的存儲體讀取沖突,分配給每個單元的共享內(nèi)存地址不能連續(xù)。

    圖5 線程塊內(nèi)blockSize行的列主元形式存儲的歸約矩陣

    Fig.5 Reduction matrix stored in column primitive form of block size row

    3 并行組裝算法算例對比

    3.1 測試平臺與對象

    本文測試平臺硬件選用單機多GPU工作站,采用上述算法在自行設計的并行求解器框架下,模擬細長體彈性飛行器飛行過程,并對單GPU及多GPU并行的性能及拓展性進行對比,列入表2。因為CUDA 9.0版本不支持Visual studio新版本的一部分宏,為避免自行配置發(fā)生未知錯誤,在保證支持編譯C++11標準的編譯器中選擇MSVC14.0。為進一步驗證單機多GPU節(jié)點的耗時情況,帶*號的GPU1作為添加的另一部GPU,以期實現(xiàn)單計算節(jié)點的并行任務分割。

    同時,鑒于Windows并非真正的實時操作系統(tǒng),其CPU端計時器精度僅有1 ms,故在進行時間統(tǒng)計時采用CUDA自帶的cudaEvenet_t計時,其精度為0.5 μs。若干組適宜于航天器典型構型或特征的測試算例列入表3。

    3.2 計算精度及效率分析

    首先,測試METIS對于單元分類的計算耗時情況。在使用Release且不進行優(yōu)化,網(wǎng)格從文件中讀取的情況下,測試顏色分組耗時,各算例情況如圖7所示。可以看出,因為文件讀取內(nèi)容沒有變化,I/O耗時基本沒有太大變化,幾乎是隨著單元數(shù)目的增加而線性增加。但是兩種劃分方式隨單元數(shù)目的變化有著非常大的變化,紅黑樹在前幾個單元數(shù)量較少的算例中表現(xiàn)優(yōu)異,但從編號3開始,K路劃分的耗時增幅相對較少;當單元數(shù)達到80000左右時,兩者在劃分成22種顏色的情況下耗時比已達到2.5倍左右。從劃分顏色數(shù)量的變化趨勢看,劃分的顏色越多,邊切割數(shù)越多,必然導致耗時越多;但是若在只有一部圖形處理器的工作站上,沒有必要劃分很多種顏色進而產(chǎn)生非常多的流,那么在4~10種顏色劃分中其耗時變化不大,尤其在單元數(shù)較多時波動不超過5%,也驗證了Cris[11]的觀點;而在若干臺、每臺均有多于一部圖形處理器的工作環(huán)境下,在編號6中單元數(shù)較多時,其額外耗時不超過6 ms,相較于集群計算的通信延遲是能接受的。可見,在此使用METIS進行顏色分組是非常高效和合適的方法;同時,也能通過曲線擬合的方法,在已知單元數(shù)目條件下,選擇最優(yōu)的劃分算法。

    圖6 利用共享內(nèi)存的非零值組裝策略流程

    Fig.6 Flow chart of non-zero assembly strategy using shared memory

    表2 計算平臺配置

    Tab.2 Computing platform configuration

    硬件/軟件配置CPUIntelE31230V5內(nèi)存DDR4240016GGPU0GTX10606GGPU1?GTX10603G操作系統(tǒng)WindowsCUDA版本9.0編程環(huán)境MSVC14.0

    表3 飛行器典型構型或部件算例

    Tab.3 Typical configuration and components list of aircraft

    編號單元名稱單元數(shù)量節(jié)點數(shù)算例描述12D4N5066長方形平面薄板2C3D8120220空間梁型結構3S4R-S337463658升力體飛行器機翼42D3N74344038三角面元機翼5C3D82006240736空間組合梁型結構6S4R-S38877588661升力體飛行器完整構型

    圖7 各測試用例劃分耗時

    Fig.7 Time-consuming for partitioning test cases

    為保證裝配算法在常用的二次單元中同樣有較好的通適性,選取表3的編號3模型和編號5模型,分別將各單元替換為二階四邊形-三角形殼元和二階六面體等參單元。并行裝配算法橫向對比結果如圖8所示。以雙精度計算并調(diào)用cudaThreadSynchronize函數(shù)保證線程同步后截止計時,記錄不包括主機-設備端傳輸耗時之外的所有耗時項。由于高階單元需要更多的計算量、共享內(nèi)存及寄存器空間,其耗時相應也較低階單元更多;同時如圖8(b)所示,在單元數(shù)較多時,基于共享內(nèi)存的非零組裝算法在二階單元情況下獲得了約3的加速比,單純從組裝算法耗時看能夠滿足至多 25 ms 步長的實時仿真要求,而顏色重排序算法僅獲得了約2倍的加速效果,無法滿足實時性要求。但是值得注意的是,圖8兩算例的耗時均在單臺工作機上統(tǒng)計,而顏色分割重排序算法可將任務分配至計算集群內(nèi)的多個計算節(jié)點同時組裝,由于GPU組裝相較于基于顏色劃分的組裝算法會產(chǎn)生額外的CPU-GPU內(nèi)存拷貝操作,因此顏色重排序后將任務分配至各計算節(jié)點的策略在此情況下的計算耗時可能比共享內(nèi)存的非零組裝算法更少。

    為進一步驗證并行組裝算法在單機多GPU節(jié)點的耗時情況,經(jīng)修改主程序,以單元顏色分組后的單雙號為識別,將單色號單元分配至GPU0內(nèi)組裝,雙色號單元分配至GPU1內(nèi)組裝,獲得如圖9所示的結果。對比在計算平臺1的計算耗時,顏色分割重排序算法沒有發(fā)生明顯的時間變化,其原因是在該算法中,METIS進行顏色分割的耗時占據(jù)了很大一部分,其作為在CPU上運行的串行算法并不能因新GPU的引入而實現(xiàn)性能提升,符合Amdahl定律。但基于共享內(nèi)存和全局顯存的非零組裝算法均有一定的性能提升,尤其編號5的二階單元組裝算例中,因單元數(shù)較多能夠啟動足夠多的核函數(shù),基于共享內(nèi)存的非零組裝算法幾乎呈線性加速,耗時控制在10 ms以內(nèi),實現(xiàn)了約6的加速比。

    圖8 一階、二階單元不同組裝算法耗時對比

    Fig.8 Time comparison of different assembly algorithms for first-order and second-order elements

    圖9 雙GPU下不同階數(shù)單元組裝耗時

    Fig.9 Time-consuming comparison of different order unit assembly under dual GPU

    4 結 論

    為了設計適用于彈性飛行器飛行動力學仿真及結構快速故障診斷平臺,作為初步的算法研究,設計了不同種類的有限元組裝算法,以常用的著色算法為基礎,提出了全局顯存和共享內(nèi)存的非零元素組裝算法。以航天器典型部件為算例,提出了適宜于不同階數(shù)單元的組裝算法,在雙精度下采用單機雙GPU達到了約6倍的加速比,用以往25 ms的制導周期作為判據(jù),二階單元在20000余個時仍能通過共享內(nèi)存的非零組裝模式滿足組裝的實時性要求。但沒有討論單元矩陣存儲模式對組裝算法的影響,也未討論單精度算法能夠在滿足精度的條件下允許更多的單元滿足實時組裝的需求。以上兩點將是未來的研究重點。

    猜你喜歡
    共享內(nèi)存線程全局
    Cahn-Hilliard-Brinkman系統(tǒng)的全局吸引子
    量子Navier-Stokes方程弱解的全局存在性
    通過QT實現(xiàn)進程間的通信
    落子山東,意在全局
    金橋(2018年4期)2018-09-26 02:24:54
    基于PCI總線的多處理器協(xié)同機制研究
    科技風(2017年20期)2017-07-10 18:56:06
    淺談linux多線程協(xié)作
    新思路:牽一發(fā)動全局
    QNX下PEX8311多路實時數(shù)據(jù)采集的驅動設計
    電子世界(2014年21期)2014-04-29 06:41:36
    一種高效RTAI 共享內(nèi)存管理層的研究與實現(xiàn)*
    Linux線程實現(xiàn)技術研究
    国内揄拍国产精品人妻在线| 热99re8久久精品国产| 国产一区在线观看成人免费| 欧美一级毛片孕妇| e午夜精品久久久久久久| 99热这里只有精品一区 | av中文乱码字幕在线| 中文字幕最新亚洲高清| 蜜桃久久精品国产亚洲av| 久久伊人香网站| 高清在线国产一区| 校园春色视频在线观看| 国产精品久久电影中文字幕| 成人18禁在线播放| 国产av一区在线观看免费| 两个人看的免费小视频| 啦啦啦韩国在线观看视频| 欧美大码av| 小蜜桃在线观看免费完整版高清| 国产亚洲av高清不卡| 中文字幕人成人乱码亚洲影| av视频在线观看入口| 日本黄色片子视频| 亚洲专区字幕在线| 国产不卡一卡二| 国产黄色小视频在线观看| 欧美色欧美亚洲另类二区| 真人做人爱边吃奶动态| 香蕉久久夜色| 精品国内亚洲2022精品成人| 搡老岳熟女国产| 一二三四在线观看免费中文在| 色综合婷婷激情| www日本在线高清视频| 又紧又爽又黄一区二区| 国产精品久久久久久亚洲av鲁大| 2021天堂中文幕一二区在线观| 久久人人精品亚洲av| 久久精品aⅴ一区二区三区四区| 热99在线观看视频| 日韩欧美三级三区| 亚洲精品国产精品久久久不卡| 五月伊人婷婷丁香| 亚洲国产看品久久| 亚洲av成人不卡在线观看播放网| 国产私拍福利视频在线观看| 欧美日韩中文字幕国产精品一区二区三区| 97碰自拍视频| 亚洲成人久久爱视频| 久久久精品欧美日韩精品| 深夜精品福利| 99在线人妻在线中文字幕| 国内毛片毛片毛片毛片毛片| 久久久久久久精品吃奶| 午夜免费激情av| 一级作爱视频免费观看| 女人被狂操c到高潮| 99久国产av精品| www.熟女人妻精品国产| 啦啦啦观看免费观看视频高清| 人人妻人人看人人澡| 国产伦在线观看视频一区| 国产亚洲精品久久久久久毛片| 久久久成人免费电影| 欧美xxxx黑人xx丫x性爽| 欧美国产日韩亚洲一区| 亚洲欧美精品综合一区二区三区| 免费电影在线观看免费观看| 熟女人妻精品中文字幕| 国产视频一区二区在线看| av国产免费在线观看| 亚洲欧美日韩卡通动漫| 亚洲天堂国产精品一区在线| 午夜视频精品福利| 久久精品综合一区二区三区| 日本撒尿小便嘘嘘汇集6| 亚洲无线观看免费| 精华霜和精华液先用哪个| or卡值多少钱| 国产精品女同一区二区软件 | 九色成人免费人妻av| 51午夜福利影视在线观看| 男人和女人高潮做爰伦理| 精品日产1卡2卡| 中文字幕高清在线视频| 日本黄色视频三级网站网址| 国产精品久久久av美女十八| 老汉色av国产亚洲站长工具| 最近最新免费中文字幕在线| 97超级碰碰碰精品色视频在线观看| 国产aⅴ精品一区二区三区波| 特级一级黄色大片| 三级国产精品欧美在线观看 | 亚洲国产精品久久男人天堂| 国产伦一二天堂av在线观看| 免费无遮挡裸体视频| 波多野结衣高清无吗| 日韩欧美一区二区三区在线观看| 变态另类丝袜制服| 国产精品久久久久久人妻精品电影| 欧美成人一区二区免费高清观看 | 国产伦精品一区二区三区四那| 久久久久国产精品人妻aⅴ院| 亚洲无线观看免费| 白带黄色成豆腐渣| 国产精品一区二区精品视频观看| 精品不卡国产一区二区三区| 日韩欧美国产一区二区入口| 少妇丰满av| av在线天堂中文字幕| 狠狠狠狠99中文字幕| 动漫黄色视频在线观看| 久久香蕉精品热| 日韩成人在线观看一区二区三区| 色综合亚洲欧美另类图片| 免费电影在线观看免费观看| 亚洲国产精品999在线| 深夜精品福利| 色综合亚洲欧美另类图片| 日本撒尿小便嘘嘘汇集6| 午夜精品在线福利| 麻豆国产av国片精品| 午夜福利视频1000在线观看| 97超级碰碰碰精品色视频在线观看| 久久午夜综合久久蜜桃| 丁香六月欧美| 又紧又爽又黄一区二区| 国产午夜精品久久久久久| 在线免费观看不下载黄p国产 | 色综合站精品国产| 熟女少妇亚洲综合色aaa.| 欧美日韩综合久久久久久 | 成在线人永久免费视频| 19禁男女啪啪无遮挡网站| 国产精品精品国产色婷婷| a级毛片在线看网站| xxxwww97欧美| 日韩大尺度精品在线看网址| 国产精品国产高清国产av| 亚洲 国产 在线| 少妇裸体淫交视频免费看高清| 成人亚洲精品av一区二区| 99视频精品全部免费 在线 | 欧美激情久久久久久爽电影| 免费高清视频大片| 老司机午夜福利在线观看视频| 一个人看的www免费观看视频| 宅男免费午夜| 欧美中文日本在线观看视频| 国产极品精品免费视频能看的| 亚洲精品粉嫩美女一区| 亚洲精品乱码久久久v下载方式 | 午夜福利免费观看在线| 亚洲精品乱码久久久v下载方式 | 国内毛片毛片毛片毛片毛片| 男女那种视频在线观看| 18禁黄网站禁片免费观看直播| 国产精品 国内视频| 亚洲欧美日韩高清在线视频| 午夜免费成人在线视频| 啪啪无遮挡十八禁网站| 一区二区三区国产精品乱码| 巨乳人妻的诱惑在线观看| 久久久久国内视频| 欧美日本视频| 日韩欧美一区二区三区在线观看| 亚洲成a人片在线一区二区| 激情在线观看视频在线高清| 露出奶头的视频| 老司机福利观看| 动漫黄色视频在线观看| 狠狠狠狠99中文字幕| 久久国产精品人妻蜜桃| 97人妻精品一区二区三区麻豆| 久久天躁狠狠躁夜夜2o2o| 免费在线观看日本一区| 久久亚洲精品不卡| 免费在线观看亚洲国产| 国产99白浆流出| 视频区欧美日本亚洲| 久久性视频一级片| 中文字幕精品亚洲无线码一区| 99久久精品热视频| 日韩精品青青久久久久久| 亚洲激情在线av| 一二三四社区在线视频社区8| 久久性视频一级片| 日韩欧美在线二视频| 免费在线观看视频国产中文字幕亚洲| 国产三级在线视频| 久久久久久久午夜电影| 久久久国产成人免费| 国产av麻豆久久久久久久| 三级男女做爰猛烈吃奶摸视频| 热99在线观看视频| 精品久久久久久久末码| 国产亚洲av嫩草精品影院| 男女那种视频在线观看| 成人av一区二区三区在线看| 99久久精品热视频| 午夜福利在线观看吧| 亚洲精品乱码久久久v下载方式 | 91老司机精品| 国产一区二区三区视频了| 深夜精品福利| 国产亚洲av嫩草精品影院| 国产成人av激情在线播放| 欧美日韩综合久久久久久 | 欧美大码av| 99国产极品粉嫩在线观看| 麻豆av在线久日| 免费观看精品视频网站| 日韩欧美一区二区三区在线观看| 成年女人毛片免费观看观看9| 精品不卡国产一区二区三区| av视频在线观看入口| 免费观看精品视频网站| 欧美午夜高清在线| 免费看日本二区| 免费在线观看影片大全网站| a级毛片在线看网站| 国产成人精品久久二区二区免费| 精品乱码久久久久久99久播| 亚洲国产精品久久男人天堂| 亚洲精品在线观看二区| 亚洲色图 男人天堂 中文字幕| 免费在线观看视频国产中文字幕亚洲| 久久久国产精品麻豆| 久久久久精品国产欧美久久久| 欧美+亚洲+日韩+国产| 色精品久久人妻99蜜桃| 欧美绝顶高潮抽搐喷水| 一个人免费在线观看的高清视频| 国产又黄又爽又无遮挡在线| 精品国产三级普通话版| 欧美丝袜亚洲另类 | 国产成人一区二区三区免费视频网站| 小说图片视频综合网站| 黄频高清免费视频| 欧美日本视频| 琪琪午夜伦伦电影理论片6080| www国产在线视频色| 身体一侧抽搐| 国产精品久久视频播放| 久久久久久久久免费视频了| 国产精品国产高清国产av| 99久久综合精品五月天人人| 国产午夜精品论理片| 亚洲美女黄片视频| 国产精品久久久久久人妻精品电影| 国产精品 欧美亚洲| 老汉色∧v一级毛片| 日本与韩国留学比较| 国产精品一区二区三区四区久久| 久久久久久大精品| 欧美乱妇无乱码| 真实男女啪啪啪动态图| 亚洲电影在线观看av| 亚洲国产欧洲综合997久久,| 国产真实乱freesex| 国产激情偷乱视频一区二区| 亚洲,欧美精品.| 欧美一级毛片孕妇| 悠悠久久av| 一二三四社区在线视频社区8| 欧美乱色亚洲激情| 黄色日韩在线| 他把我摸到了高潮在线观看| 香蕉国产在线看| 免费在线观看视频国产中文字幕亚洲| 舔av片在线| 欧美一级a爱片免费观看看| 男人舔女人下体高潮全视频| 欧美中文日本在线观看视频| 午夜福利在线在线| 18禁黄网站禁片午夜丰满| 国产精品亚洲一级av第二区| 中亚洲国语对白在线视频| 亚洲一区二区三区不卡视频| 久久久水蜜桃国产精品网| 高清在线国产一区| 亚洲美女视频黄频| 国产成人啪精品午夜网站| 午夜免费成人在线视频| 国产成人一区二区三区免费视频网站| 免费在线观看影片大全网站| 午夜精品在线福利| 动漫黄色视频在线观看| 男人的好看免费观看在线视频| 亚洲va日本ⅴa欧美va伊人久久| 欧美一区二区国产精品久久精品| 国产av麻豆久久久久久久| 国产91精品成人一区二区三区| 成人亚洲精品av一区二区| 最好的美女福利视频网| 美女 人体艺术 gogo| 国产极品精品免费视频能看的| a级毛片在线看网站| 欧美精品啪啪一区二区三区| 亚洲精品中文字幕一二三四区| 成人精品一区二区免费| 国产亚洲欧美在线一区二区| 日日夜夜操网爽| 久久精品国产清高在天天线| svipshipincom国产片| 国产成人系列免费观看| 首页视频小说图片口味搜索| 亚洲真实伦在线观看| 操出白浆在线播放| ponron亚洲| 免费观看的影片在线观看| 精品福利观看| 母亲3免费完整高清在线观看| 国产精品亚洲美女久久久| 亚洲无线在线观看| 一级毛片高清免费大全| 久久精品综合一区二区三区| 成人精品一区二区免费| 久久久久久大精品| 亚洲国产欧美网| 国产av不卡久久| 久久热在线av| 一区福利在线观看| 成人av在线播放网站| 99热6这里只有精品| 国产单亲对白刺激| 国产伦一二天堂av在线观看| 伊人久久大香线蕉亚洲五| 一个人免费在线观看的高清视频| aaaaa片日本免费| 在线十欧美十亚洲十日本专区| 最近视频中文字幕2019在线8| 亚洲色图 男人天堂 中文字幕| 国模一区二区三区四区视频 | 国产精品久久久久久久电影 | 中文字幕人妻丝袜一区二区| 国产成人一区二区三区免费视频网站| 又黄又爽又免费观看的视频| 宅男免费午夜| 99久久国产精品久久久| 国产毛片a区久久久久| 婷婷六月久久综合丁香| 色av中文字幕| 午夜福利欧美成人| 国产淫片久久久久久久久 | 我要搜黄色片| 夜夜夜夜夜久久久久| 国产 一区 欧美 日韩| av福利片在线观看| 亚洲精品国产精品久久久不卡| 热99re8久久精品国产| 国产精品一区二区精品视频观看| 长腿黑丝高跟| 亚洲欧美精品综合久久99| 欧美三级亚洲精品| 制服丝袜大香蕉在线| 日本一本二区三区精品| 亚洲自拍偷在线| 久久久色成人| 日韩精品中文字幕看吧| 男女下面进入的视频免费午夜| 国产私拍福利视频在线观看| 国产一区二区在线av高清观看| 精品久久久久久久久久久久久| 亚洲午夜精品一区,二区,三区| 午夜福利免费观看在线| 亚洲avbb在线观看| 日韩人妻高清精品专区| 国产精品 国内视频| 夜夜躁狠狠躁天天躁| 91av网一区二区| 久久久色成人| www日本在线高清视频| 久久精品影院6| 熟女少妇亚洲综合色aaa.| 国产乱人视频| 欧美成人一区二区免费高清观看 | 日本 av在线| 久久久国产成人精品二区| 午夜福利18| 成人鲁丝片一二三区免费| 日韩成人在线观看一区二区三区| 人妻久久中文字幕网| 午夜福利欧美成人| 久久久久精品国产欧美久久久| 精品国产美女av久久久久小说| 制服人妻中文乱码| 亚洲国产欧洲综合997久久,| 真人做人爱边吃奶动态| 免费看美女性在线毛片视频| 国产毛片a区久久久久| 男女视频在线观看网站免费| 国产视频一区二区在线看| 美女cb高潮喷水在线观看 | 欧美丝袜亚洲另类 | 一本精品99久久精品77| 亚洲国产欧洲综合997久久,| 真人做人爱边吃奶动态| 91av网站免费观看| 亚洲色图av天堂| 久久亚洲真实| 亚洲中文字幕日韩| 99在线视频只有这里精品首页| 欧美一区二区精品小视频在线| 18禁黄网站禁片午夜丰满| 波多野结衣高清无吗| 国产亚洲欧美98| 亚洲自拍偷在线| 亚洲欧美精品综合久久99| 国产精品香港三级国产av潘金莲| 丰满人妻熟妇乱又伦精品不卡| 色吧在线观看| 亚洲 欧美一区二区三区| 欧美日韩中文字幕国产精品一区二区三区| 韩国av一区二区三区四区| 久久中文字幕一级| h日本视频在线播放| 性色avwww在线观看| 亚洲中文字幕一区二区三区有码在线看 | e午夜精品久久久久久久| 国产精品久久久久久亚洲av鲁大| 久久精品91无色码中文字幕| 91老司机精品| 国产高清三级在线| 男人舔奶头视频| 毛片女人毛片| 国产精品98久久久久久宅男小说| 91麻豆av在线| 亚洲乱码一区二区免费版| 精品日产1卡2卡| 久久久成人免费电影| 亚洲av成人精品一区久久| 麻豆国产97在线/欧美| 中文字幕av在线有码专区| 久久中文字幕一级| 日韩精品中文字幕看吧| 午夜免费激情av| 国产高清视频在线播放一区| 国产亚洲欧美98| 国产不卡一卡二| 亚洲第一电影网av| 天堂√8在线中文| 亚洲午夜理论影院| 色播亚洲综合网| 夜夜看夜夜爽夜夜摸| 欧美日韩一级在线毛片| 国产三级在线视频| 色尼玛亚洲综合影院| 深夜精品福利| 久久精品国产综合久久久| 成人午夜高清在线视频| 国产视频一区二区在线看| 国产淫片久久久久久久久 | 中文在线观看免费www的网站| АⅤ资源中文在线天堂| 亚洲无线观看免费| 久久精品91无色码中文字幕| 成人av一区二区三区在线看| 欧美黄色淫秽网站| 亚洲片人在线观看| 国产成人av激情在线播放| 国产精品爽爽va在线观看网站| 国产成+人综合+亚洲专区| 69av精品久久久久久| 亚洲电影在线观看av| 美女 人体艺术 gogo| 巨乳人妻的诱惑在线观看| 午夜久久久久精精品| 国产一区二区在线av高清观看| 国产伦一二天堂av在线观看| 丝袜人妻中文字幕| 97碰自拍视频| 蜜桃久久精品国产亚洲av| 亚洲精品色激情综合| 人人妻人人看人人澡| 国产成人精品无人区| 99视频精品全部免费 在线 | 国产主播在线观看一区二区| 免费在线观看日本一区| 免费大片18禁| av天堂中文字幕网| 99精品久久久久人妻精品| 男女午夜视频在线观看| 伦理电影免费视频| 九九热线精品视视频播放| 久久久久国产精品人妻aⅴ院| 男插女下体视频免费在线播放| 伊人久久大香线蕉亚洲五| 99久久综合精品五月天人人| 日本精品一区二区三区蜜桃| 国产亚洲精品av在线| 久久亚洲真实| 国产精品98久久久久久宅男小说| 99精品久久久久人妻精品| 天天躁狠狠躁夜夜躁狠狠躁| 两个人看的免费小视频| 久久中文字幕人妻熟女| 亚洲人成网站在线播放欧美日韩| av女优亚洲男人天堂 | 久久午夜亚洲精品久久| 亚洲av成人一区二区三| 成人特级黄色片久久久久久久| 欧美激情在线99| 一本精品99久久精品77| 国产蜜桃级精品一区二区三区| 精品99又大又爽又粗少妇毛片 | 精品乱码久久久久久99久播| xxx96com| 国产高清视频在线观看网站| 免费观看精品视频网站| 哪里可以看免费的av片| 高潮久久久久久久久久久不卡| 亚洲熟妇中文字幕五十中出| 18禁黄网站禁片午夜丰满| 真实男女啪啪啪动态图| 国产精品久久久久久精品电影| 久久久久久久久免费视频了| 亚洲熟妇熟女久久| 久久人妻av系列| 国产不卡一卡二| 欧美极品一区二区三区四区| 美女免费视频网站| 亚洲第一欧美日韩一区二区三区| 少妇人妻一区二区三区视频| 午夜激情福利司机影院| 精品国产超薄肉色丝袜足j| 国产精品av久久久久免费| 国产成人精品久久二区二区免费| 琪琪午夜伦伦电影理论片6080| 99久久精品一区二区三区| 欧美一区二区国产精品久久精品| 色综合婷婷激情| 久久中文字幕一级| 超碰成人久久| 国产高清有码在线观看视频| 手机成人av网站| 在线观看午夜福利视频| 日韩人妻高清精品专区| 久久伊人香网站| a级毛片a级免费在线| 在线观看66精品国产| x7x7x7水蜜桃| av欧美777| www.精华液| 在线免费观看的www视频| 亚洲熟妇熟女久久| 黄色丝袜av网址大全| 中文字幕人成人乱码亚洲影| 精品无人区乱码1区二区| 黑人巨大精品欧美一区二区mp4| 禁无遮挡网站| 国产精品综合久久久久久久免费| 免费看美女性在线毛片视频| 免费av不卡在线播放| 最近在线观看免费完整版| 一进一出抽搐gif免费好疼| 亚洲成人久久爱视频| 2021天堂中文幕一二区在线观| 国产亚洲欧美98| av欧美777| 午夜久久久久精精品| 色综合亚洲欧美另类图片| 高潮久久久久久久久久久不卡| 久久精品影院6| 熟妇人妻久久中文字幕3abv| 久久精品aⅴ一区二区三区四区| 一本精品99久久精品77| 亚洲精品美女久久久久99蜜臀| 免费在线观看日本一区| 露出奶头的视频| 国产亚洲精品一区二区www| 欧美成人性av电影在线观看| 婷婷精品国产亚洲av| 久久午夜亚洲精品久久| 每晚都被弄得嗷嗷叫到高潮| 好男人在线观看高清免费视频| www.自偷自拍.com| 亚洲精品456在线播放app | 男女床上黄色一级片免费看| 91九色精品人成在线观看| 欧美xxxx黑人xx丫x性爽| 国产成+人综合+亚洲专区| 欧美黑人巨大hd| 欧美一区二区精品小视频在线| 99久国产av精品| 五月玫瑰六月丁香| 真人做人爱边吃奶动态| 岛国在线免费视频观看| 久久久久国产精品人妻aⅴ院| 欧美乱妇无乱码| 亚洲乱码一区二区免费版| 级片在线观看| 欧美一区二区国产精品久久精品| 成人国产综合亚洲| 久久久色成人| 搡老岳熟女国产| 高潮久久久久久久久久久不卡| 亚洲九九香蕉| 亚洲熟女毛片儿| 国产亚洲欧美98| 宅男免费午夜| 91九色精品人成在线观看| 丝袜人妻中文字幕| 999久久久国产精品视频| 精品久久蜜臀av无| 国产不卡一卡二| 国产av麻豆久久久久久久| 一夜夜www| 国产视频一区二区在线看| 欧美色视频一区免费| 婷婷精品国产亚洲av在线| 日本三级黄在线观看| 成年女人永久免费观看视频| 成年版毛片免费区| 国产成人aa在线观看|