仿真的硬件选型原则:CPU
? ? 做各類仿真工作,硬件條件是最基礎的部分。如今主流仿真應用(結構有限元、流體CFD等)是基于CPU運行的,因此CPU的性能直接決定了仿真求解速度。本文就自身的理解,簡單講述CPU選型的幾個基本原則。
1 架構與制程
? ? 基本原則:買新不買舊,一定要選發布時間較近的CPU,可以多考慮AMD的產品。
? ? 架構(architecture)是硬件的基本設計框架,直接決定了CPU的整體性能。和架構相關的另一個概念叫制程(fabrication process),表示了芯片內電路之間的間距。
? ? 通常而言,新架構會采用更先進制程,會比使用不那么先進制程的舊架構更優秀,因此可實現更強大的性能。制程則數字越低越好,例如7nm制程比14nm制程好。
? ? 近幾年AMD和英特爾的架構、制程信息總結如下,格式:年份/架構名/制程/產品舉例。規劃中的產品線信息根據近期的新聞總結。
AMD:
2019?/?Zen 2 / 7nm /?Ryzen 9 3950X
2020?/?Zen 3 / 7nm /?Ryzen 9 5950X
2022?/?Zen 4?/ 5nm /?Ryzen 9 7950X
規劃中:2024 / Zen 5 / 3nm /?
英特爾:
2020?/ Comet Lake / 14nm / i9 - 10900
2021?/ Rocket Lake / 14nm / i9 - 11900
2021?/ Alder Lake / 10nm / i9 - 12900
2022?/ Raptor Lake / 10nm /?i9 - 13900
規劃中:2024?/?Meteor Lake / 7nm
2 核心數與頻率
2.1 運行頻率
? ? 對于同一架構的CPU,頻率決定了單核心性能。CPU的頻率包括基準頻率和最大加速頻率兩類,其中,基準頻率是指空載狀態下的CPU頻率,最大加速頻率是指滿載運行下可以實現的最大運行頻率。頻率要求為越高越好。
2.2 核心數和線程的關系
? ? 關于核心數問題,涉及核心線程的概念。利用超線程技術將一個CPU核心虛擬化為兩個線程,可極大的方便操作系統進行硬件資源調度。但是超線程技術不會實際增加算力。操作系統分配CPU資源是按照線程進行分配,而不是核心。
? ? 類比舉例,CPU算力資源是一大碗菜,每個需要CPU的程序是夾菜的人,超線程技術則將菜(CPU算力)均分為兩小碗(一個核心虛擬化為兩個線程),當多人吃菜(多個程序搶CPU資源)時,更容易將菜分配給每個吃菜的人(算力根據程序需求進行分配)。
? ? 在仿真軟件的求解設置界面中,設置的調用核心數應該基于線程數,而非CPU核心數。應用程序不可能越過操作系統直接調度硬件資源。
? ? 任務管理器中顯示的CPU信息如圖,核心(cores)數量8,線程(logical processor)數量16。在仿真軟件的求解計算設置界面中,調用核心數輸入16才能使CPU滿載運行;輸入8只能使一半核心滿載,一半核心空載。
2.3 核心數選型原則
? ? 核心數選擇根據主要應用場景決定。所有程序都會出現核心數增加后并行效率惡化的趨勢,因此無限制的增加CPU核心數并不能顯著降低求解的時間。其惡化趨勢如圖所示。
? ? 對于并行加速效率較差的軟件(例如各類基于有限元法的軟件,包括ANSYS、Abaqus、HyperWorks、COMSOL等),可以考慮采用核心數中等,但是運行頻率很高的型號,例如AMD線程撕裂者Pro 5965WX(24核心48線程,基準頻率3.8GHz,最高加速頻率4.5GHz)。由于程序本身的并行效率較差,因此進一步增加核心數量對于節約計算時間意義不大。
? ??對于并行加速效率極佳的軟件(例如基于有限體積法的Fluent、Star-CCM+,基于離散元法的EDEM等),可以考慮使用核心數更多的型號,至于單核心的頻率則可以不要求太高,例如AMD線程撕裂者Pro 5995WX(64核心128線程)。
3 CPU類型
? ? 仿真的CPU主要采用桌面CPU或服務器CPU,很少見筆記本的移動端CPU。而且通常筆記本電腦無論硬件算力還是散熱條件,都難以運行復雜的仿真項目。
? ? 對于同時代的CPU,因為實際上采用相同架構,因此兩類CPU單核心的性能本身差異并不大。甚至部分服務器CPU因為可靠性需求而限制了頻率,實際性能反而不如桌面CPU。服務器和桌面CPU,更多的差距在于兩者在其他硬件的支持能力不同。部分服務器CPU型號支持多CPU擴展、大容量內存等,可適用于非常復雜的仿真問題。
3 CPU性能參考標準
? ? CPU性能對比,可直接參考性能測試軟件(performance benchmark software)的評分。整體而言,測試軟件評分更高的CPU,其性能更強。不同性能測試軟件的測試方法、打分標準等均不同,且側重于不同的應用場景,因此需要參考多方性能測試數據做綜合對比,且詳細比較同一測試軟件中不同項目的測試結果。
對于仿真應用,可推薦的測試程序:
Geekbench(官網:browser.geekbench.com)
PassMark(官網:www.cpubenchmark.net)
4 其他注意事項
4.1 電源系統搭配
? ? 電源如果供電功率不足或者供電質量太差(例如輸出到主板的電壓不穩定)會嚴重影響各設備的正常運行,甚至導致莫名其妙的死機等問題。電源輸出功率要留有一定量余量,方便后續的硬件升級(如更換顯卡、增加內存等)
4.2 散熱系統搭配
? ? 良好的散熱是硬件充分發揮性能的必備條件。散熱不佳會導致系統通過降頻甚至強制關機斷電等辦法保護硬件。如果安裝空間等條件足夠,建議使用水冷系統,可以承載更大的散熱負荷。與此同時,散熱系統需要定期做維護保養,包括清理內部積灰、加注導熱硅脂等,建議對散熱系統做維護頻率至少一年一次。
4.3 軟件問題
? ? 保持應用程序、操作系統、驅動程序、BIOS等軟件部分的更新升級,使軟件能夠充分發揮硬件性能。特別是仿真軟件本身,各個主要開發商均把提升并行效率,在更多核心數下可實現高效并行作為功能優化方向之一。
? ? 如果不存在VMWare之類必須開啟超線程才能運行的程序,可建議將超線程在BIOS設置為關閉。關閉后,一個CPU核心等同于一個線程,因此實現同樣的算力,可使用更少的核心數,提升并行效率。
? ? 關閉超線程提升并行效率的方法不適用于英特爾酷睿系列的12代及后續型號。原因在于,此方法的前提是每個CPU核心算力是相同的。酷睿系列的12代及后續型號采用大小核架構,僅大核(性能核)支持超線程,小核(效能核)不支持超線程,而且大核小核之間的算力差異巨大。
參考:
AMD產品手冊?www.amd.com/en/products/specifications
英特爾產品手冊?ark.intel.com/content/www/us/en/ark.html#@Processors
總結
以上是生活随笔為你收集整理的仿真的硬件选型原则:CPU的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android音频基础知识
- 下一篇: 调用MYSQL存储过程实例