
發布
注冊
/
登錄abaqus內存的案例
Abaqus計算內存的問題:aba_sint_cap
因此,查閱了網絡上相關帖子和幫助文檔,加上親身經歷,整理如下:
方法一:可以直接在abaqus_v6.env中設置memory='80%'或其他方式,詳見幫助文檔
方法二:可通過高級系統設置--->環境變量--->變量名:ABA_SINT_CAP 值:16384
(說明:16384這個值可以更大,但似乎沒有意義!)
基于上述方法設置了足夠大的內存后,但仍然出現該錯誤。具體原因:
Abaqus中每8GB的物理內存,使用的內存將不會超過2GB
在滿足上述條件的基礎上,最多使用內存限制為16GB。
遇到這個問題后,建議重新調整模型,減小inp文件的體量。目前尚未找到特別好的方法!
展開 ABAQUS提高計算速度的經驗總結
我不精通計算機原理,但在Windows和Linux上安裝使用過32位和64位ABAQUS,也在64位工作站上用Linux并行計算過,對計算速度有一點自己的心得,寫出來和大家討論下,對計算機比較精通的,希望能解釋下原理和表達下自己的看法。
我認為影響計算速度的因素主要有3個:1 計算模型的大小和復雜程度 2 ABAQUS中關于內存和硬盤使用的設置 3 計算機的配置
在ABAQUS幫助文件中說,一個有限元模型在分析計算中,會生成兩種臨時文件,第一種臨時文件是必須放在內存中,第二種臨時文件可以放在硬盤里也可以放在內存中。由于內存讀寫速度比硬盤讀寫速度快,所以如果計算機配置不變的情況下,要達到最快計算速度,就要在計算時讓兩種臨時文件都放在內存中。在計算前進行datacheck,然后在dat文件中會告訴你能使模型計算所需最小的內存量,也就是在計算中所生成的第一種文件的大小,還會告訴你最小I/O交換情況所需的內存量,也就是兩種文件都放在內存中時所需要的內存量,我稱這叫“全速計算”所需內存量。在ABAQUS6.8中,有個內存使用上限設置參數,也就是你允許你的計算機中有多少內存讓ABAQUS使用,如果你允許ABAQUS使用的內存上限大于“全速計算”所需內存,則ABAQUS會將兩種臨時文件放入內存使用。如果允許內存大于最小所需內存,小于“全速計算”計算內存,則ABAQUS會把第二種文件一部分放入內存,一部分放入硬盤。如果允許內存小于最小所需內存,則無法計算。
所以如果你的模型“全速計算”所需內存量很小的時候,或者相對你的計算機物理內存很小的時候,如果不改變計算機配置,速度就已經達到最快了,再加大內存或內存上限也沒用。
展開 如何提高ABAQUS計算速度
如何提高ABAQUS計算速度
當問題的自由度和復雜程度比較小的時候,計算速度也許不是什么太大的問題,但當自由度很多,比如幾百萬個自由度,又有復雜的接觸搜索計算時,計算速度就很重要了。我不精通計算機原理,但在Windows和Linux上安裝使用過32位和64位ABAQUS,也在64位工作站上用Linux并行計算過,對計算速度有一點自己的心得,寫出來和大家討論下,對計算機比較精通的,希望能解釋下原理和表達下自己的看法。
我認為影響計算速度的因素主要有3個:
1.計算模型的大小和復雜程度;
2.ABAQUS中關于內存和硬盤使用的設置;
3.計算機的配置。
在ABAQUS幫助文件中說,一個有限元模型在分析計算中,會生成兩種臨時文件,第一種臨時文件是必須放在內存中,第二種臨時文件可以放在硬盤里也可以放在內存中。由于內存讀寫速度比硬盤讀寫速度快,所以如果計算機配置不變的情況下,要達到最快計算速度,就要在計算時讓兩種臨時文件都放在內存中。在計算前進行datacheck,然后在dat文件中會告訴你能使模型計算所需最小的內存量,也就是在計算中所生成的第一種文件的大小,還會告訴你最小I/O交換情況所需的內存量,也就是兩種文件都放在內存中時所需要的內存量,我稱這叫“全速計算”所需內存量。在ABAQUS中,有個內存使用上限設置參數,也就是你允許你的計算機中有多少內存讓ABAQUS使用,如果你允許ABAQUS使用的內存上限大于“全速計算”所需內存,則ABAQUS會將兩種臨時文件放入內存使用。如果允許內存大于最小所需內存,小于“全速計算”計算內存,則ABAQUS會把第二種文件一部分放入內存,一部分放入硬盤。如果允許內存小于最小所需內存,則無法計算。
展開 ABAQUS提高計算速度的經驗總結(轉)
在ABAQUS幫助文件中說,一個有限元模型在分析計算中,會生成兩種臨時文件,第一種臨時文件是必須放在內存中,第二種臨時文件可以放在硬盤里也可以放在內存中。由于內存讀寫速度比硬盤讀寫速度快,所以如果計算機配置不變的情況下,要達到最快計算速度,就要在計算時讓兩種臨時文件都放在內存中。在計算前進行datacheck,然后在dat文件中會告訴你能使模型計算所需最小的內存量,也就是在計算中所生成的第一種文件的大小,還會告訴你最小I/O交換情況所需的內存量,也就是兩種文件都放在內存中時所需要的內存量,我稱這叫“全速計算”所需內存量。在ABAQUS6.8中,有個內存使用上限設置參數,也就是你允許你的計算機中有多少內存讓ABAQUS使用,如果你允許ABAQUS使用的內存上限大于“全速計算”所需內存,則ABAQUS會將兩種臨時文件放入內存使用。如果允許內存大于最小所需內存,小于“全速計算”計算內存,則ABAQUS會把第二種文件一部分放入內存,一部分放入硬盤。如果允許內存小于最小所需內存,則無法計算。
所以如果你的模型“全速計算”所需內存量很小的時候,或者相對你的計算機物理內存很小的時候,如果不改變計算機配置,速度就已經達到最快了,再加大內存或內存上限也沒用。如果你的模型無法進行“全速計算”,首先可以在可能的情況下,提高ABAQUS允許使用內存上限值來提速,如果本身物理內存的限制,那么加大物理內存也能提速。
下面說說CPU和內存的使用問題。首先CPU和內存頻率越高計算速度就會越快。當“全速計算”時,我看到的是CPU在分析計算時能100%使用(除了前處理,寫入計算結果和兩迭代計算中間隙時),多CPU計算也是如此。不是“全速計算”時,分析計算種CPU部分時間能100%使用,和部分CPU能100%使用,我想這應該和硬盤讀寫速度相對較慢導致的吧。
展開 
ABAQUS有限元分析應用計算特點及硬件配置探討(20190522)
核與內存容量的比例
每個核與內存數據計算量大概在1:4~8比較合理 ,例如4核對應內存16GB~32GB,8核對應32GB~64GB,16核對應64GB~128GB,當然內存越大越好,XASUN獨有的內存虛擬硬盤軟件可以幫助你大幅縮短數據交換時間。
網格規模與內存容量合理分配
如果設置ABAQUS使用的內存上限超過實際的物理內存,調用的數據就會從虛擬內存、硬盤來讀去,CPU的等待時間大大變長,造成計算速度整體下降。所以務必保證控制好數據占用內存容量上限,必須是計算機物理內存實際能空閑提供給ABAQUS使用的內存。
硬盤的性能
在計算過程中,如果內存容量不夠, 數據文件是放在硬盤上的, 如果內存足夠大的話, 這個文件則會由ABAQUS進行任務調度放入內存以提高速度, 即設定內存使用量的百分比. 這個不是指所需的內存量, 而是作為一個控制磁盤剩余空間的參數.
內存容量畢竟有限,如果模型特別大的話,兩類文件加起來得幾十個GB,肯定得往硬盤里寫數據。所以提升效率最經濟的方法就是把硬盤讀寫的速度提上去,就得通過RAID方式提升硬盤的讀寫性能,詳細推薦參考下面配置方案中得硬盤使用。
計算中的操作軟環境注意
一般計算所用的操作系統,基本都是window和linux 64位,但是基于Linux環境的計算時間普遍比Windows環境要短的多,另外安裝過程也有很多注意事項,只有對整個運行過程非常了解,設置合理,對計算速度提升非常大的。
在ABAQUS的有限元模型分析計算中,會生成臨時文件,盡量將文件存儲介質放到最快的存儲介質上,對整體運算也是非常重要的。
由于內存讀寫速度比硬盤讀寫速度快,所以如果計算機配置不變的情況下,要達到最快計算速度,就要在計算時讓兩種臨時文件都放在內存中。
展開 Abaqus子程序:基礎知識概述1
(2)命名約定
如果用戶子程序調用其他子程序(非用戶子程序)或使用 COMMON 塊傳遞信息,則此類子程序或 COMMON 塊應以字母 K 開頭,因為該字母在 Abaqus 中絕不會用于任何子程序或 COMMON 塊的名稱開頭。
用 C 或 C++ 編寫的用戶子程序將從 Fortran 中調用;因此,它們必須符合 Fortran 調用約定:C 或 C++ 子程序的名稱必須包含在 FOR_NAME 宏中,并且參數必須通過引用傳遞和接收。;例如,
extern “C“ void FOR_NAME(film,FILM) (double & arg1, ...) { ˙˙˙ }
(3)要定義或者更新的變量
用戶子程序必須執行它們的既有的功能,而不覆蓋Abaqus 的其他部分。用戶應當僅僅重新定義如“定義得到的變量”節中確定的那些變量。重新定義“為信息傳遞進的變量”將具有不可預測的影響。
(4)編譯和鏈接問題
如果在編譯或鏈接子程序期間遇到問題,請確保 Abaqus 環境文件(該文件的默認位置是 Abaqus 安裝的 site 子目錄)包含系統自定義參數中指定的正確編譯和鏈接命令。這些命令應由 Abaqus 站點管理員在安裝過程中設置。參數的數量和類型必須與文檔中指定的相對應。參數類型或數量的不匹配可能會導致平臺相關的鏈接或運行時錯誤。
(5)內存分配注意事項
我們的用戶子程序將與 Abaqus 共享內存資源。當需要使用大型數組或其他大型數據結構時,應該動態分配它們的內存,以便從堆而不是堆棧中分配內存。未能動態分配大型數組可能會導致堆棧溢出錯誤并退出 Abaqus 分析。有關使用本機 Fortran 可分配數組進行動態分配的示例,未來我研究明白了再講,實際上大多數情況是不用考慮的。
展開 abaqus 故障診斷基本方法與常見問題-論壇整理
問:我在運行abaqus時出現錯誤:abaqus error:the executable C:\abaqus\6.5-1\exec\standard.exe aborted with system error "拒絕訪問"(error code 5)
答:先看dat和msg文件中有沒有warning或error,如果沒有,常見的有三種原因:- abaqus_v6.env中的參數pre_memory設置得過大- 用戶子程序中出現問題。檢查在INP文件中調用用戶子程序時,是否使用了正確的參數。可以嘗試用一個簡單的例子來調試用戶子程序,確保其正確性。另外在編寫用戶子程序時,應注意盡可能多設置一些出錯提示。- ABAQUS本身的bug。可以嘗試去掉模型中不必要的特殊設置,各參數盡量使用ABAQUS的默認值。如果初始的模型沒問題,而在修改了某些參數之后出現上述錯誤信息,可以嘗試逐個將這些參數恢復至初始狀態。
問:explicit.exe“拒絕訪問” 是什么錯誤?在線等計算時出現:explicit.exe“拒絕訪問” ,這是什么錯誤?另外,用批處理方式:abaqus job=aus interactive,運行abaqus時如何設置內存大小?我的模型比較大,有30M,我運行幫助里提供的小例子就沒有出現錯誤。
答:如果你是想提高abaqus可以運用的內存的量,你可以修改environment文件中的memory設置。不過如果你沒有這個權限的話,你也可以把這個文件拷貝下來到你的運行目錄里面,再修改,abaqus默認運行目錄里面的設置優先。
問:溫度計算出現的問題在溫度瞬態計算時,出現了以下錯誤:explicit.exe“拒絕訪問”在.msg沒有提示。
展開 提升Abaqus求解效率的七種武器
來源:CAETube講堂 作者:江丙云
路漫漫其修遠兮,設置好Abaqus模型,開始運行Job,上下而求索,打開監視器窗口,飲余馬於咸池兮地保持空白,比你想象的還空空如也。模擬花費的時間比希望或預期的更久,怎樣才能在不砸錢買硬件的基礎上,更快更高效的求解,同時不會顯著降低結果的準確性呢?
第一種武器: 不要使用超出必要的單元
影響運行速度的主要因素之一是自由度的數量,2倍自由度將導致模擬速度降低2倍多。因此,具有較少單元的相同類型模擬速度將更快。
對于對稱問題,只仿真一半模型,能夠減少至少2倍的求解時間,后處理再通過可視化選項,可視化完整模型;如果能夠使用軸對稱方法,更將進一步縮短仿真時間,同時后處理允許構造整個模型的可視效果。
在某些情況下,幾何形狀和第1個加載步是軸對稱的,而后續的加載步不是。比如,輪胎充氣加壓時,可以使用軸對稱單元模擬,在后續的使用載荷工況分析,則從軸對稱模型生成3D模型,把軸對稱模型中的載荷狀態映射到3D模型。使用此方法也可大大節省求解時間。
第二種武器: 確保臨時數據匹配系統的RAM
如果分析的臨時數據不再能完全保存在內存中,則許多自由度變得特別有問題。在進行數據檢查時,估算所有臨時數據所需的內存量,并在“內存最小化I / O”的.dat文件中寫出。當Abaqus需要的內存超過可用RAM的內存時,將使用虛擬內存:磁盤空間用作附加內存。寫入和讀取磁盤需要額外的時間,從而降低性能并增加求解時間。
第三種武器:不要讓單個單元破壞Abaqus/Explicit中的求解速度
顯式算法是條件穩定的,因此,使用的時間增量必須足夠小以確保穩定。當使用較小的時間增量時,需要更多的增量步來模擬相同的總時間量,并且需要更長的時間。
展開 ABAQUS各模塊介紹及對比
對于許多分析,應該選擇ABAQUS/Standard還是ABAQUS/Explicit是比較明顯的。例如,對于求解光滑的非線性問題,ABAQUS/Standard更有效;另一方面,對于波的傳播分析,應該明確地選擇ABAQUS/Explicit,然而,有一些靜態或準靜態問題,應用任何程序都能很好地進行模擬。特別地,有些問題一般是使用ABAQUS/Standard進行求解的,但是由于接觸或者材料的復雜性,可能難以收斂,從而導致大量的迭代。由于每次迭代都需要求解由大量線性方程組成的方程組,所以這些使用ABAQUS/Standard的分析,其代價是相當大的。
ABAQUS/Standard必須進行通過迭代確定非線性問題的解答,而ABAQUS/Explicit通過由前一增量步的數據顯式地前推動力學狀態,確定解答無須進行迭代。應用顯式方法,即便對于一個給定的可能需要大量時間增量步的分析,如果同樣的分析應用ABAQUS/Standard需要大量的迭代,那么應用ABAQUS/Explicit進行分析可能是更為有效的。
對于同樣的模擬,ABAQUS/Explicit的另一個優點是它需要的磁盤空間和內存遠遠小于ABAQUS/Standard。對于需要比較兩個程序計算成本的問題,能節省大量的磁盤空間和內存使得ABAQUS/Explicit更具有吸引力。
從在隱式和顯式分析中網格加密的成本角度來看,使用顯式方法,機時消耗與單元數量成正比,并且大致與最小單元的尺寸成反比。由于增加了單元的數量和減小了最小單元的尺寸,因此網格細劃增加了計算成本。對于顯式方法,可以很直接地預測隨著網格細劃帶來的成本增加,而當采用隱式方法時,預測成本是非常困難的。困難來自于在單元連接和求解成本之間的關系,而在顯式方法中不存在這種關系。應用隱式方法,經驗表明對于許多間題的計算成本大致與自由度數目的平方成正比。
展開 2、ABAQUS/Standard和ABAQUS/Explicit的比較
ABAQUS/Standard和ABAQUS/Explici t都具有解決廣泛的各種類型問題的能力。對于一個給定的間題,隱式和顯式算法的特點決定了采用哪一種算法更適合。對于采用任何算法都可以解決的間題,求解間題的效率可能決定了采用哪種產品。下表列出了兩者之間的主要區別。
參量
ABAQUS/Standard
ABAQUS/Explicit
單元庫
提供了豐富的單元庫
提供了適用于顯式分析的豐富的單元庫,這個單元庫是ABAQUS/Stnndard單元庫的子集
分析過程
一般過程和線性攝動過程
一般過程
材料模型
提供了廣泛的材料模型
類似于在ABAQUS/Stnndard中的材料模型;一個顯著的區別是提供了允許材料失效的模型
接觸公式
對于求解接觸問題,具有強健的能力
具有強健的接觸功能甚至能夠解決最復雜的接觸模擬
求解技術
應用基于剛度的求解技術,具有無條件穩定性
應用顯式積分求解技術,具有條件穩定性
磁盤空間和內存
由于在增量步中大最的迭代,可能占用大量的磁盤空間和內存
磁盤空間和內存的占用量相對于ABAQUS/Stnndard要小很多
此外,兩者的區別還包括:
1)ABAQUS/Standard
沒有穩定時間增量的限制:完成指定分析,一般需要較少的時間增量;
因為每個增量步都需要求解線性方程組,所以每個增量步的費用非常昂貴;
適合于模擬與模型的振動頻率相比研究響應周期較長的問題;
由于時間增量的限制,使用顯式動力學求解效率很低;
用于具有適度非線性的問題,其中非線性是平滑的(比如,塑性);
如果是平滑的非線性響應, Abaqus/Standard需要較少次數的迭代找到收斂解。
展開 ABAQUS中Standard分析模塊和Explicit分析模塊的區別比較及選擇
參量
ABAQUS/Standard
ABAQUS/Explicit
單元庫
提供了豐富的單元庫
提供了適用于顯式分析的豐富的單元庫,這個單元庫是ABAQUS/Stnndard單元庫的子集
分析過程
一般過程和線性攝動過程
一般過程
材料模型
提供了廣泛的材料模型
類似于在ABAQUS/Stnndard中的材料模型;一個顯著的區別是提供了允許材料失效的模型
接觸公式
對于求解接觸問題,具有強健的能力
具有強健的接觸功能甚至能夠解決最復雜的接觸模擬
求解技術
應用基于剛度的求解技術,具有無條件穩定性
應用顯式積分求解技術,具有條件穩定性
磁盤空間和內存
由于在增量步中大最的迭代,可能占用大量的磁盤空間和內存
磁盤空間和內存的占用量相對于ABAQUS/Stnndard要小很多
此外,兩者的區別還包括:
1)ABAQUS/Standard
沒有穩定時間增量的限制:完成指定分析,一般需要較少的時間增量;
因為每個增量步都需要求解線性方程組,所以每個增量步的費用非常昂貴;
適合于模擬與模型的振動頻率相比研究響應周期較長的問題;
由于時間增量的限制,使用顯式動力學求解效率很低;
用于具有適度非線性的問題,其中非線性是平滑的(比如,塑性);
如果是平滑的非線性響應, Abaqus/Standard需要較少次數的迭代找到收斂解。
展開 