
發(fā)布
注冊(cè)
/
登錄abaqus內(nèi)存上限
關(guān)注創(chuàng)建者:王靖雯 創(chuàng)建時(shí)間:2023-02-27

abaqus內(nèi)存上限的實(shí)例教程
在ABAQUS幫助文件中說,一個(gè)有限元模型在分析計(jì)算中,會(huì)生成兩種臨時(shí)文件,第一種臨時(shí)文件是必須放在內(nèi)存中,第二種臨時(shí)文件可以放在硬盤里也可以放在內(nèi)存中。由于內(nèi)存讀寫速度比硬盤讀寫速度快,所以如果計(jì)算機(jī)配置不變的情況下,要達(dá)到最快計(jì)算速度,就要在計(jì)算時(shí)讓兩種臨時(shí)文件都放在內(nèi)存中。在計(jì)算前進(jìn)行datacheck,然后在dat文件中會(huì)告訴你能使模型計(jì)算所需最小的內(nèi)存量,也就是在計(jì)算中所生成的第一種文件的大小,還會(huì)告訴你最小I/O交換情況所需的內(nèi)存量,也就是兩種文件都放在內(nèi)存中時(shí)所需要的內(nèi)存量,我稱這叫“全速計(jì)算”所需內(nèi)存量。在ABAQUS6.8中,有個(gè)內(nèi)存使用上限設(shè)置參數(shù),也就是你允許你的計(jì)算機(jī)中有多少內(nèi)存讓ABAQUS使用,如果你允許ABAQUS使用的內(nèi)存上限大于“全速計(jì)算”所需內(nèi)存,則ABAQUS會(huì)將兩種臨時(shí)文件放入內(nèi)存使用。如果允許內(nèi)存大于最小所需內(nèi)存,小于“全速計(jì)算”計(jì)算內(nèi)存,則ABAQUS會(huì)把第二種文件一部分放入內(nèi)存,一部分放入硬盤。如果允許內(nèi)存小于最小所需內(nèi)存,則無法計(jì)算。
所以如果你的模型“全速計(jì)算”所需內(nèi)存量很小的時(shí)候,或者相對(duì)你的計(jì)算機(jī)物理內(nèi)存很小的時(shí)候,如果不改變計(jì)算機(jī)配置,速度就已經(jīng)達(dá)到最快了,再加大內(nèi)存或內(nèi)存上限也沒用。如果你的模型無法進(jìn)行“全速計(jì)算”,首先可以在可能的情況下,提高ABAQUS允許使用內(nèi)存上限值來提速,如果本身物理內(nèi)存的限制,那么加大物理內(nèi)存也能提速。
下面說說CPU和內(nèi)存的使用問題。首先CPU和內(nèi)存頻率越高計(jì)算速度就會(huì)越快。當(dāng)“全速計(jì)算”時(shí),我看到的是CPU在分析計(jì)算時(shí)能100%使用(除了前處理,寫入計(jì)算結(jié)果和兩迭代計(jì)算中間隙時(shí)),多CPU計(jì)算也是如此。不是“全速計(jì)算”時(shí),分析計(jì)算種CPU部分時(shí)間能100%使用,和部分CPU能100%使用,我想這應(yīng)該和硬盤讀寫速度相對(duì)較慢導(dǎo)致的吧。
展開 如何提高ABAQUS計(jì)算速度
當(dāng)問題的自由度和復(fù)雜程度比較小的時(shí)候,計(jì)算速度也許不是什么太大的問題,但當(dāng)自由度很多,比如幾百萬(wàn)個(gè)自由度,又有復(fù)雜的接觸搜索計(jì)算時(shí),計(jì)算速度就很重要了。我不精通計(jì)算機(jī)原理,但在Windows和Linux上安裝使用過32位和64位ABAQUS,也在64位工作站上用Linux并行計(jì)算過,對(duì)計(jì)算速度有一點(diǎn)自己的心得,寫出來和大家討論下,對(duì)計(jì)算機(jī)比較精通的,希望能解釋下原理和表達(dá)下自己的看法。
我認(rèn)為影響計(jì)算速度的因素主要有3個(gè):
1.計(jì)算模型的大小和復(fù)雜程度;
2.ABAQUS中關(guān)于內(nèi)存和硬盤使用的設(shè)置;
3.計(jì)算機(jī)的配置。
在ABAQUS幫助文件中說,一個(gè)有限元模型在分析計(jì)算中,會(huì)生成兩種臨時(shí)文件,第一種臨時(shí)文件是必須放在內(nèi)存中,第二種臨時(shí)文件可以放在硬盤里也可以放在內(nèi)存中。由于內(nèi)存讀寫速度比硬盤讀寫速度快,所以如果計(jì)算機(jī)配置不變的情況下,要達(dá)到最快計(jì)算速度,就要在計(jì)算時(shí)讓兩種臨時(shí)文件都放在內(nèi)存中。在計(jì)算前進(jìn)行datacheck,然后在dat文件中會(huì)告訴你能使模型計(jì)算所需最小的內(nèi)存量,也就是在計(jì)算中所生成的第一種文件的大小,還會(huì)告訴你最小I/O交換情況所需的內(nèi)存量,也就是兩種文件都放在內(nèi)存中時(shí)所需要的內(nèi)存量,我稱這叫“全速計(jì)算”所需內(nèi)存量。在ABAQUS中,有個(gè)內(nèi)存使用上限設(shè)置參數(shù),也就是你允許你的計(jì)算機(jī)中有多少內(nèi)存讓ABAQUS使用,如果你允許ABAQUS使用的內(nèi)存上限大于“全速計(jì)算”所需內(nèi)存,則ABAQUS會(huì)將兩種臨時(shí)文件放入內(nèi)存使用。如果允許內(nèi)存大于最小所需內(nèi)存,小于“全速計(jì)算”計(jì)算內(nèi)存,則ABAQUS會(huì)把第二種文件一部分放入內(nèi)存,一部分放入硬盤。如果允許內(nèi)存小于最小所需內(nèi)存,則無法計(jì)算。
展開 我不精通計(jì)算機(jī)原理,但在Windows和Linux上安裝使用過32位和64位ABAQUS,也在64位工作站上用Linux并行計(jì)算過,對(duì)計(jì)算速度有一點(diǎn)自己的心得,寫出來和大家討論下,對(duì)計(jì)算機(jī)比較精通的,希望能解釋下原理和表達(dá)下自己的看法。
我認(rèn)為影響計(jì)算速度的因素主要有3個(gè):1 計(jì)算模型的大小和復(fù)雜程度 2 ABAQUS中關(guān)于內(nèi)存和硬盤使用的設(shè)置 3 計(jì)算機(jī)的配置
在ABAQUS幫助文件中說,一個(gè)有限元模型在分析計(jì)算中,會(huì)生成兩種臨時(shí)文件,第一種臨時(shí)文件是必須放在內(nèi)存中,第二種臨時(shí)文件可以放在硬盤里也可以放在內(nèi)存中。由于內(nèi)存讀寫速度比硬盤讀寫速度快,所以如果計(jì)算機(jī)配置不變的情況下,要達(dá)到最快計(jì)算速度,就要在計(jì)算時(shí)讓兩種臨時(shí)文件都放在內(nèi)存中。在計(jì)算前進(jìn)行datacheck,然后在dat文件中會(huì)告訴你能使模型計(jì)算所需最小的內(nèi)存量,也就是在計(jì)算中所生成的第一種文件的大小,還會(huì)告訴你最小I/O交換情況所需的內(nèi)存量,也就是兩種文件都放在內(nèi)存中時(shí)所需要的內(nèi)存量,我稱這叫“全速計(jì)算”所需內(nèi)存量。在ABAQUS6.8中,有個(gè)內(nèi)存使用上限設(shè)置參數(shù),也就是你允許你的計(jì)算機(jī)中有多少內(nèi)存讓ABAQUS使用,如果你允許ABAQUS使用的內(nèi)存上限大于“全速計(jì)算”所需內(nèi)存,則ABAQUS會(huì)將兩種臨時(shí)文件放入內(nèi)存使用。如果允許內(nèi)存大于最小所需內(nèi)存,小于“全速計(jì)算”計(jì)算內(nèi)存,則ABAQUS會(huì)把第二種文件一部分放入內(nèi)存,一部分放入硬盤。如果允許內(nèi)存小于最小所需內(nèi)存,則無法計(jì)算。
所以如果你的模型“全速計(jì)算”所需內(nèi)存量很小的時(shí)候,或者相對(duì)你的計(jì)算機(jī)物理內(nèi)存很小的時(shí)候,如果不改變計(jì)算機(jī)配置,速度就已經(jīng)達(dá)到最快了,再加大內(nèi)存或內(nèi)存上限也沒用。
展開 因此,查閱了網(wǎng)絡(luò)上相關(guān)帖子和幫助文檔,加上親身經(jīng)歷,整理如下:
方法一:可以直接在abaqus_v6.env中設(shè)置memory='80%'或其他方式,詳見幫助文檔
方法二:可通過高級(jí)系統(tǒng)設(shè)置--->環(huán)境變量--->變量名:ABA_SINT_CAP 值:16384
(說明:16384這個(gè)值可以更大,但似乎沒有意義!)
基于上述方法設(shè)置了足夠大的內(nèi)存后,但仍然出現(xiàn)該錯(cuò)誤。具體原因:
Abaqus中每8GB的物理內(nèi)存,使用的內(nèi)存將不會(huì)超過2GB
在滿足上述條件的基礎(chǔ)上,最多使用內(nèi)存限制為16GB。
遇到這個(gè)問題后,建議重新調(diào)整模型,減小inp文件的體量。目前尚未找到特別好的方法!
展開 核與內(nèi)存容量的比例
每個(gè)核與內(nèi)存數(shù)據(jù)計(jì)算量大概在1:4~8比較合理 ,例如4核對(duì)應(yīng)內(nèi)存16GB~32GB,8核對(duì)應(yīng)32GB~64GB,16核對(duì)應(yīng)64GB~128GB,當(dāng)然內(nèi)存越大越好,XASUN獨(dú)有的內(nèi)存虛擬硬盤軟件可以幫助你大幅縮短數(shù)據(jù)交換時(shí)間。
網(wǎng)格規(guī)模與內(nèi)存容量合理分配
如果設(shè)置ABAQUS使用的內(nèi)存上限超過實(shí)際的物理內(nèi)存,調(diào)用的數(shù)據(jù)就會(huì)從虛擬內(nèi)存、硬盤來讀去,CPU的等待時(shí)間大大變長(zhǎng),造成計(jì)算速度整體下降。所以務(wù)必保證控制好數(shù)據(jù)占用內(nèi)存容量上限,必須是計(jì)算機(jī)物理內(nèi)存實(shí)際能空閑提供給ABAQUS使用的內(nèi)存。
硬盤的性能
在計(jì)算過程中,如果內(nèi)存容量不夠, 數(shù)據(jù)文件是放在硬盤上的, 如果內(nèi)存足夠大的話, 這個(gè)文件則會(huì)由ABAQUS進(jìn)行任務(wù)調(diào)度放入內(nèi)存以提高速度, 即設(shè)定內(nèi)存使用量的百分比. 這個(gè)不是指所需的內(nèi)存量, 而是作為一個(gè)控制磁盤剩余空間的參數(shù).
內(nèi)存容量畢竟有限,如果模型特別大的話,兩類文件加起來得幾十個(gè)GB,肯定得往硬盤里寫數(shù)據(jù)。所以提升效率最經(jīng)濟(jì)的方法就是把硬盤讀寫的速度提上去,就得通過RAID方式提升硬盤的讀寫性能,詳細(xì)推薦參考下面配置方案中得硬盤使用。
計(jì)算中的操作軟環(huán)境注意
一般計(jì)算所用的操作系統(tǒng),基本都是window和linux 64位,但是基于Linux環(huán)境的計(jì)算時(shí)間普遍比Windows環(huán)境要短的多,另外安裝過程也有很多注意事項(xiàng),只有對(duì)整個(gè)運(yùn)行過程非常了解,設(shè)置合理,對(duì)計(jì)算速度提升非常大的。
在ABAQUS的有限元模型分析計(jì)算中,會(huì)生成臨時(shí)文件,盡量將文件存儲(chǔ)介質(zhì)放到最快的存儲(chǔ)介質(zhì)上,對(duì)整體運(yùn)算也是非常重要的。
由于內(nèi)存讀寫速度比硬盤讀寫速度快,所以如果計(jì)算機(jī)配置不變的情況下,要達(dá)到最快計(jì)算速度,就要在計(jì)算時(shí)讓兩種臨時(shí)文件都放在內(nèi)存中。
展開 
abaqus內(nèi)存上限的相關(guān)專題、標(biāo)簽、搜索
abaqus內(nèi)存上限的最新內(nèi)容
最近在開展分析時(shí)遇到錯(cuò)誤如下:MAXIMUM SIZE OF STATIC WORKSPACE HAS BEEN EXCEEDED. CURRENT WORKSPACE SIZE IS 16384.00 MB. THE SIZE OF THE WORKSPACE CAN BE INCREASED USING THE SYSTEM ENVIRONMENT VARIABLE ABA_SINT_CAP.
網(wǎng)格規(guī)模與內(nèi)存容量合理分配
如果設(shè)置ABAQUS使用的內(nèi)存上限超過實(shí)際的物理內(nèi)存,調(diào)用的數(shù)據(jù)就會(huì)從虛擬內(nèi)存、硬盤來讀去,CPU的等待時(shí)間大大變長(zhǎng),造成計(jì)算速度整體下降。所以務(wù)必保證控制好數(shù)據(jù)占用內(nèi)存容量上限,必須是計(jì)算機(jī)物理內(nèi)存實(shí)際能空閑提供給ABAQUS使用的內(nèi)存。
如果你設(shè)置的ABAQUS使用的內(nèi)存上限大于你實(shí)際的物理內(nèi)存,這個(gè)時(shí)候好像就會(huì)用到虛擬內(nèi)存,計(jì)算速度也會(huì)大打折扣。如果你用ABAQUS時(shí)還有其它程序也在大量使用內(nèi)存和CPU,也會(huì)很影響速度。所以務(wù)必保證你設(shè)置的允許使用內(nèi)存上限,必須是計(jì)算機(jī)物理內(nèi)存實(shí)際能空閑提供給ABAQUS使用的內(nèi)存。
如果你設(shè)置的ABAQUS使用的內(nèi)存上限大于你實(shí)際的物理內(nèi)存,這個(gè)時(shí)候好像就會(huì)用到虛擬內(nèi)存,計(jì)算速度也會(huì)大打折扣。如果你用ABAQUS時(shí)還有其它程序也在大量使用內(nèi)存和CPU,也會(huì)很影響速度。所以務(wù)必保證你設(shè)置的允許使用內(nèi)存上限,必須是計(jì)算機(jī)物理內(nèi)存實(shí)際能空閑提供給ABAQUS使用的內(nèi)存。
如果你設(shè)置的ABAQUS使用的內(nèi)存上限大于你實(shí)際的物理內(nèi)存,這個(gè)時(shí)候好像就會(huì)用到虛擬內(nèi)存,計(jì)算速度也會(huì)大打折扣。如果你用ABAQUS時(shí)還有其它程序也在大量使用內(nèi)存和CPU,也會(huì)很影響速度。所以務(wù)必保證你設(shè)置的允許使用內(nèi)存上限,必須是計(jì)算機(jī)物理內(nèi)存實(shí)際能空閑提供給ABAQUS使用的內(nèi)存。