本申請涉及核外并行計算,特別是涉及一種高效的自動多重子結(jié)構(gòu)核外并行計算方法。
背景技術(shù):
1、自動多重子結(jié)構(gòu)方法在諸如結(jié)構(gòu)動力學(xué)分析、結(jié)構(gòu)優(yōu)化設(shè)計、振動控制、電磁學(xué)、流固耦合問題等工程領(lǐng)域中具有廣泛的應(yīng)用,能夠提供高效、準(zhǔn)確的動力學(xué)分析與優(yōu)化設(shè)計的解決方案。但隨著結(jié)構(gòu)設(shè)計的復(fù)雜性增加,模型網(wǎng)格的精度和節(jié)點數(shù)也在增加,這導(dǎo)致了仿真問題的規(guī)模變得巨大,單臺計算機的內(nèi)存容量已經(jīng)越來越不滿足實際計算的需求。此時無論是拓展內(nèi)存條數(shù)量還是使用集群計算都不是一項經(jīng)濟(jì)的選擇,相比之下價格低廉而容量的硬盤無疑更具性價比,但目前還沒有實現(xiàn)該算法核外并行的技術(shù)方案。
2、現(xiàn)有方案對自動多重子結(jié)構(gòu)求解算法的介紹與改進(jìn)都是立足于核內(nèi)多線程基礎(chǔ)上,旨在實現(xiàn)更好的負(fù)載均衡或者達(dá)到更高的計算精度。這些技術(shù)在大規(guī)模仿真計算中都不可避免地會遇到內(nèi)存受限的問題,難以滿足單臺計算機上大規(guī)模模型仿真計算的實際需求。
技術(shù)實現(xiàn)思路
1、基于此,有必要提供一種高效的自動多重子結(jié)構(gòu)核外并行計算方法,該方法包括:
2、s1:將有限元仿真分析模型剖分為由子結(jié)構(gòu)組成的二叉消去樹;并初始化內(nèi)存空間,為二叉消去樹中的節(jié)點分配內(nèi)存;
3、s2:計算節(jié)點組裝所需的內(nèi)存大小,并將其與分配的組裝內(nèi)存比較,更新組裝內(nèi)存;根據(jù)節(jié)點的類型從磁盤讀取更新數(shù)據(jù),并基于更新的組裝內(nèi)存和所述更新數(shù)據(jù)完成節(jié)點的矩陣組裝;
4、s3:求解節(jié)點中的約束矩陣和廣義特征方程,將求解得到的約束矩陣以及特征向量作為第一類數(shù)據(jù)寫入磁盤;基于節(jié)點中求解得到的約束矩陣以及特征向量計算所述節(jié)點對其祖先節(jié)點的更新數(shù)據(jù);并將所述更新數(shù)據(jù)作為第二類數(shù)據(jù)寫入磁盤;
5、s4:釋放為節(jié)點分配的自由度更新位置內(nèi)存、組裝內(nèi)存以及線程計算內(nèi)存;
6、s5:遍歷所述二叉消去樹,求解各節(jié)點中降維的廣義特征方程,得到所述特征對,并釋放分配的全局內(nèi)存;
7、s6:基于各節(jié)點的特征對以及約束矩陣回代計算,得到陣型向量,關(guān)閉線程的文件流并釋放分配的約束矩陣內(nèi)存。
8、有益效果:該方法解決了大規(guī)模模型計算時數(shù)據(jù)量過大導(dǎo)致單臺計算機內(nèi)存不足的問題,提高了計算機的內(nèi)存使用率,在減少計算過程中的峰值內(nèi)存的同時盡可能避免了性能損失。
1.一種高效的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,所述初始化內(nèi)存空間,為二叉消去樹中的節(jié)點分配內(nèi)存包括:
3.根據(jù)權(quán)利要求2所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,節(jié)點組裝所需的內(nèi)存大小的計算公式為:
4.根據(jù)權(quán)利要求2所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,所述更新組裝內(nèi)存包括:
5.根據(jù)權(quán)利要求1所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,所述根據(jù)節(jié)點的類型從磁盤讀取更新數(shù)據(jù)包括:
6.根據(jù)權(quán)利要求2所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,在求解節(jié)點中的約束矩陣和模態(tài)方程過程中,將節(jié)點中的約束矩陣寫入所述約束矩陣內(nèi)存中,記錄約束矩陣的大?。辉谀B(tài)方程計算完之后,若方程有解,則將求得的特征值寫入所述全局內(nèi)存中的數(shù)組,在數(shù)組中特征值將與節(jié)點的自由度位置對應(yīng)。
7.根據(jù)權(quán)利要求1所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,計算得到所述更新數(shù)據(jù)之后,若所述節(jié)點是其父節(jié)點的左孩子節(jié)點且所述節(jié)點為非葉子節(jié)點,則當(dāng)前線程在磁盤中創(chuàng)建一個以該節(jié)點id作為辨別的二進(jìn)制文件;將更新數(shù)據(jù)寫入其中。
8.根據(jù)權(quán)利要求6所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,求解降維的廣義特征方程,得到特征向量包括:
9.根據(jù)權(quán)利要求1所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,所述陣型向量的計算公式為:
10.根據(jù)權(quán)利要求8所述的自動多重子結(jié)構(gòu)核外并行計算方法,其特征在于,組裝的矩陣包括:剛度矩陣、質(zhì)量矩陣、耦合剛度矩陣以及耦合質(zhì)量矩陣;剛度矩陣以及耦合剛度矩陣的計算公式如下: