推薦用于運(yùn)行COMSOL Multiphysics的硬件配置
COMSOL Multiphysics® 求解的問(wèn)題類型相當(dāng)廣泛,加之當(dāng)今軟件和硬件開發(fā)速度之快,并且不同價(jià)位的硬件有著很大的差異,因此,我們不能一概而論地說(shuō)哪一款計(jì)算機(jī)對(duì)于所有使用案例來(lái)說(shuō)都是最佳選擇。
內(nèi)存
對(duì)于計(jì)算機(jī)而言,最重要一個(gè)因素是,要有足夠的物理內(nèi)存 (RAM) 來(lái)求解您要處理的最大模型,并且您已正確安裝內(nèi)存。如果沒(méi)有足夠的內(nèi)存,那么無(wú)論您選擇什么樣的硬件,計(jì)算機(jī)的運(yùn)行速度都會(huì)明顯下降。
您可以通過(guò)求解一些與待求解的最大模型相似但更小的模型來(lái)預(yù)測(cè)內(nèi)存需求,測(cè)試模型包含的物理場(chǎng)與您要在最大模型中求解的相同。監(jiān)視所用的內(nèi)存以及自由度,這些信息報(bào)告在“求解器日志”中。將曲線擬合為 A x (dof)^N 形式的表達(dá)式,其中 A 和 N 是擬合系數(shù),dof 是自由度數(shù),您可以據(jù)此預(yù)測(cè)較大模型的內(nèi)存要求。指數(shù) N 通常介于 1 到 2 之間,主要取決于所使用的線性方程組求解器的類型。因子 A 在很大程度上取決于待求解物理場(chǎng)的類型和各種物理場(chǎng)的組合,但也可能取決于模型中的具體特征。請(qǐng)注意,對(duì)于不同的模型類型,內(nèi)存使用率與自由度之間的關(guān)系存在巨大的差異,因此,您可能需要為待求解的每一種模型重復(fù)此過(guò)程。
您將需要一臺(tái)至少具有您估計(jì)的最大 RAM 容量的計(jì)算機(jī)。還請(qǐng)注意,如果內(nèi)存量遠(yuǎn)遠(yuǎn)超過(guò)實(shí)際需要的量,也并沒(méi)有什么明顯優(yōu)勢(shì)。請(qǐng)確保使用所選 CPU 支持的盡可能快的內(nèi)存速度。
性能在很大程度上還取決于內(nèi)存的安裝方式。計(jì)算機(jī)通過(guò)多通道內(nèi)存總線訪問(wèn)安裝的內(nèi)存,如果內(nèi)存未正確填充,則內(nèi)存速度會(huì)降低。例如,假設(shè)有一臺(tái)具有四個(gè)內(nèi)存通道的單 CPU 計(jì)算機(jī),每個(gè)通道有兩個(gè)插槽,總共有 8 個(gè)開放的 DIMM 插槽,如下圖所示。假設(shè)您希望安裝 64 GB 的 RAM,有多種方法可以做到這一點(diǎn)。
對(duì)于這臺(tái)計(jì)算機(jī),在計(jì)算機(jī)性能方面的最佳做法是使用一個(gè) 8 GB DIMM 填充所有八個(gè)插槽。然而,這樣做的缺點(diǎn)是無(wú)法進(jìn)行擴(kuò)展,如果您需要升級(jí) RAM,則需要購(gòu)買所有新的內(nèi)存。近乎最佳的方法是為每個(gè)內(nèi)存通道放置一個(gè) 16 GB DIMM。性能可能略低于最佳配置,但通過(guò)再購(gòu)買四個(gè) 16 GB DIMM,安裝的內(nèi)存可以增加一倍,因此這種配置總體上是最好的。純粹就可擴(kuò)展性而言,最佳選擇是安裝單個(gè) 64 GB DIMM,因?yàn)檫@樣可以留下最多的空插槽。但是,這種情況下的性能可能會(huì)慢四倍左右,對(duì)于大內(nèi)存模型來(lái)說(shuō)尤其如此。只有在首要考慮可擴(kuò)展性的情況下,才建議使用這種配置。其他配置沒(méi)有任何優(yōu)勢(shì)。下面的示意圖對(duì)此進(jìn)行了匯總。另外,與您的硬件供應(yīng)商核實(shí)最佳內(nèi)存安裝問(wèn)題也是不錯(cuò)的做法。
影響軟件整體速度的其他因素
性能、CPU 類型、CPU 基頻、緩存、CPU 數(shù)量、每個(gè) CPU 的內(nèi)核數(shù)和硬件成本之間存在著復(fù)雜的關(guān)系。COMSOL 代碼庫(kù)由多種不同的算法組成,這些算法具有不同的擴(kuò)展屬性。因此,某些硬件因素對(duì)性能的影響大于其他因素,并且這些因素的相對(duì)優(yōu)點(diǎn)與問(wèn)題的類型和大小都相關(guān)。所以,我們很難提出具體的硬件建議。下面給出一些一般建議。
CPU類型
不同的 CPU 架構(gòu)提供不同的特性集,其價(jià)格也存在顯著差異。
高端 CPU(如英特爾® 至強(qiáng)® Gold 和 Platinum 或者 AMD® EPYC®)處理器采用 CPU 到 CPU 互連技術(shù),使每臺(tái)計(jì)算機(jī)支持多個(gè) CPU,并允許 CPU 之間相互通信,以訪問(wèn)大量?jī)?nèi)存。這些處理器具有最大內(nèi)存帶寬,能夠在內(nèi)存與處理器之間來(lái)回快速傳輸大量數(shù)據(jù),這是它們?cè)谶\(yùn)行 COMSOL 時(shí)的主要優(yōu)勢(shì)。高端 CPU 應(yīng)在雙 CPU、甚至四 CPU 或八 CPU 配置中使用。如果您需要尋址大量?jī)?nèi)存,或者計(jì)劃連續(xù)并行運(yùn)行多個(gè)仿真,則此類 CPU 是最理想的選擇。在求解單個(gè)模型時(shí),性能將隨著 CPU 數(shù)量的增加而提高,但相對(duì)性能的提高取決于模型的大小。在多 CPU 系統(tǒng)上求解較大模型時(shí),速度提升更快。如果您計(jì)劃購(gòu)買四 CPU 或八 CPU 系統(tǒng),請(qǐng)聯(lián)系 COMSOL 技術(shù)支持。
中端 CPU(如英特爾® 至強(qiáng)® W 或 AMD® Ryzen™ Threadripper™)處理器沒(méi)有 CPU 到 CPU 互連結(jié)構(gòu),因此對(duì)于單 CPU 計(jì)算機(jī)來(lái)說(shuō)是不錯(cuò)的選擇。它們具有與高端系統(tǒng)相當(dāng)?shù)臅r(shí)鐘速度和內(nèi)核數(shù),是一種具有吸引力的全方位選擇。
英特爾® 酷睿™ 處理器等消費(fèi)級(jí) CPU 可以具有非常好甚至更加出色的性能,在求解較小內(nèi)存的模型時(shí)尤其如此。
時(shí)鐘頻率
較高的時(shí)鐘頻率通常會(huì)從軟件的各個(gè)方面提升性能速度。如果兩臺(tái)計(jì)算機(jī)的所有其他硬件規(guī)格都相同,則它們之間的相對(duì)性能主要取決于時(shí)鐘頻率。
高速緩存
高速緩存直接內(nèi)置在處理器中,緩存越大越好。在所有其他因素都相同的情況下,緩存較大的機(jī)器將表現(xiàn)出更好的性能。
內(nèi)核數(shù)
處理器中的內(nèi)核越多,一次可以執(zhí)行的并行線程就越多,這就是多線程處理。COMSOL 將自動(dòng)利用所有可用的內(nèi)核,但這需要計(jì)算成本。并行使用過(guò)多內(nèi)核盡管通常只用于求解相對(duì)較小的模型,但這樣做可能會(huì)導(dǎo)致速度降低,有些模型甚至被它們的單線程性能控制。一般來(lái)說(shuō),六核或八核系統(tǒng)是比較好的全方位選擇,但內(nèi)核越多可能越好,這在并行運(yùn)行多個(gè)模型或使用 PARDISO 直接求解器時(shí)尤其如此。
一般建議
參數(shù)化掃描
如果您打算在各個(gè)不同的模型中求解許多幾何變體、不同的網(wǎng)格、不同的材料集或其他參數(shù),就需要使用“參數(shù)化掃描”功能。舉例來(lái)說(shuō),如果您要掃描 10 種變化的零件尺寸,并掃描 10 種不同的材料和 10 個(gè)不同的模型參數(shù),則需要求解 1000 次相似的模型,在單臺(tái)計(jì)算機(jī)上將每次掃描作為單個(gè)作業(yè)運(yùn)行時(shí),求解時(shí)間(最壞的情況下)正好是原來(lái)的 1000 倍。
無(wú)論是在使用任何許可證類型的單臺(tái)計(jì)算機(jī)上,還是在使用網(wǎng)絡(luò)浮動(dòng)許可證的集群計(jì)算機(jī)上,通過(guò)并行運(yùn)行作業(yè)都可以減少掃描大量參數(shù)的求解時(shí)間。
為了在單臺(tái)計(jì)算機(jī)上并行求解,您可以使用批處理掃描功能。僅當(dāng)內(nèi)存支持同時(shí)求解所有模型時(shí),我們才建議您在單臺(tái)計(jì)算機(jī)上并行運(yùn)行參數(shù)化掃描。例如,如果求解一個(gè)模型實(shí)例需要 3GB 內(nèi)存,那么就可以在 16GB 內(nèi)存的計(jì)算機(jī)上同時(shí)運(yùn)行四個(gè)作業(yè)。對(duì)于內(nèi)存要求較少的模型,在同時(shí)運(yùn)行與內(nèi)核數(shù)一樣多的作業(yè)時(shí),性能有明顯的提升。使用“批處理掃描”時(shí)的相對(duì)加速比取決于模型和硬件。
為了在集群上并行求解“參數(shù)化掃描”,您可以使用集群掃描功能。一次可以運(yùn)行的并行作業(yè)數(shù)沒(méi)有限制(最多可以達(dá)到集群上可用節(jié)點(diǎn)的數(shù)量)。您可以在自己的集群上運(yùn)行,也可以使用第三方集群運(yùn)行。COMSOL 維護(hù)著一個(gè)技術(shù)合作伙伴列表,這些合作伙伴為集群計(jì)算提供隨需應(yīng)變的計(jì)算資源。每個(gè)集群節(jié)點(diǎn)只需滿足針對(duì)運(yùn)行單個(gè)模型所設(shè)定的要求即可。有關(guān)集群硬件的進(jìn)一步指導(dǎo)信息,請(qǐng)參見(jiàn)知識(shí)庫(kù) 1116。
另請(qǐng)參見(jiàn)知識(shí)庫(kù) 1250:從命令行運(yùn)行參數(shù)化掃描、批處理掃描和集群掃描。
您應(yīng)該始終考慮是否可以使用優(yōu)化模塊來(lái)避免大規(guī)模掃描。
操作系統(tǒng)
在 COMSOL Multiphysics 5.4 之前的版本中,Linux 和 macOS 操作系統(tǒng)在某些多核處理器上的性能表現(xiàn)可能超過(guò) Windows。
硬盤驅(qū)動(dòng)器
與硬盤驅(qū)動(dòng)器相比,固態(tài)硬盤可以提供更好的整體系統(tǒng)性能。驅(qū)動(dòng)器的速度總是越快越好,但如果系統(tǒng)在您求解的模型上將驅(qū)動(dòng)器用于交換空間(虛擬內(nèi)存),則最好升級(jí)內(nèi)存,而不是投資到提升驅(qū)動(dòng)器的速度上。
顯卡
我們推薦使用基于最新 AMD 或 NVIDIA 的專用顯卡。您可以在系統(tǒng)要求頁(yè)面找到通過(guò)測(cè)試的顯卡列表。顯卡的內(nèi)存越大,您能看到的模型細(xì)節(jié)越復(fù)雜。請(qǐng)注意,不能僅僅因?yàn)榍蠼饽P托枰罅康?RAM 內(nèi)存就斷定需要較大視頻卡才能顯示模型,反之亦然。
GPU
本軟件目前不支持圖形處理單元上的通用計(jì)算。