做各类仿真工作,硬件条件是最基础的部分。如今主流仿真应用(结构有限元、流体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相关推荐

  1. HFSS和CST电磁仿真的硬件选型指南(纯个人经验)

    行业主流的这两款软件区别 各个搜索引擎里面都有很多相关介绍了,我就简单描述一下. HFSS:自动剖分网格,主打频域有限元,即FEM算法.适合复杂精细模型的求解,行业标杆.后续也加入了瞬态时域算法以及S ...

  2. 计算机设备选型的基本原则,信息系统设备选型原则.doc

    选型原则 服务器平台的总体设计主要是从应用和技术两个方面入手,采用以应用体系为支撑,以技术体系为依托,满足业务体系的总体结构.其中,应用体系用于描述基于业务体系所确定的界面定义.服务内容.应用模型,它 ...

  3. STM32-Keil软件仿真和硬件仿真/在线仿真

    软件仿真和硬件仿真什么区别?软件仿真就是没有硬件参与的仿真,完全是模拟实现的.硬件仿真是将程序下载到控制芯片的FLASH或RAM中,直接在硬件上实现仿真.[有什么问题欢迎联系讨论,一起解决问题] 仿真 ...

  4. 计算机硬件选型报价,计算机系统硬件选型

    计算机系统硬件选型 (102页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 29.9 积分 计算机系统部件的选型计算机选型原则:够用为度,留有余地,部件匹 ...

  5. 刷新存储器的容量单位是什么_什么是PLC?PLC的选型原则是什么?

    头条号私信回复1,获取海量免费学习资源,内容包括自动化电气工程师必备的软件.电子书.视频教程等 合理选用PLC, 对于提高系统的性能.设备的可靠性, 以及技术经济指标, 有着重要意义. 题图:PLC ...

  6. 系统服务器选型依据,1.2 服务器选型原则

    1.2 服务器选型原则 做技术选型时,用户首先要清楚地了解应用的类型和特点,然后才能选择合适的平台. 由于技术在不断发展,IBM的Power系列服务器上可以运行AIX.Linux等多种操作系统.如果考 ...

  7. 超全总结!视觉SLAM方案整理及硬件选型(附项目地址)

    编辑丨智东西公开课 本文已获CSDN博主「Mega_Li」授权发布,如需转载请与原作者联系.原文链接:https://blog.csdn.net/lwx309025167/article/detail ...

  8. C#获取电脑硬件信息(CPU ID、主板ID、硬盘ID、BIOS编号

    C#获取电脑硬件信息(CPU ID.主板ID.硬盘ID.BIOS编号 http://www.cnblogs.com/liufei88866/archive/2010/05/11/1732671.htm ...

  9. (04)FPGA芯片选型原则

    (04)FPGA芯片选型原则 1.1 目录 1)目录 2)FPGA简介 3)Verilog HDL简介 4)FPGA芯片选型原则 5)结语 1.2 FPGA简介 FPGA(Field Programm ...

  10. 深度学习硬件基础:CPU与GPU

    文章目录 CPU和GPU 1. CPU 1. 1 CPU定义--少量复杂运算 1.2 CPU组成 1.3 CPU执行流程: 2. GPU 2.1 GPU定义--大量简单运算 2.2 GPU组成 3. ...

最新文章

  1. 实现量子计算,我们还需要做些什么?
  2. centos7.3安装MongoDB
  3. jzoj6316-djq的朋友圈【状压dp】
  4. linux mac地址文件夹,android4.4.2系统的mac地址文件在哪个文件里面
  5. 如何调整cmd窗口的颜色
  6. 简单电脑***《菜鸟级》
  7. 计算机连接双硬盘,电脑如何安装双硬盘
  8. Winform使用FTP实现自动更新
  9. 手写图像反转,变换,imhist,均衡化,均值中值滤波,sobel以及拉普拉斯实现图像锐化
  10. 前端UI框架网址大全----后续会有添加
  11. 格式化U盘并测试读写速度
  12. Java面向对象游戏-黑熊怪变成武大郎吃唐僧 --如何方法继承 重写
  13. Eclipse设置编辑器为绿豆沙颜色
  14. 移动硬盘位置不可用参数错误的解决方法
  15. Android初学习之四:知晓当前是哪一个活动和随时随地退出程序
  16. 如何在Linux下安装chrome浏览器
  17. python编程写完需要几年驾龄_编程小白怎么学Python,大概要多久才能学好?
  18. mongoDB图形可视化界面及操作
  19. a2dp sink 在android kk和L实现的区别
  20. 玄幻:开局选择瑶池,我只想默默签到!(一)

热门文章

  1. 国二考试报Wps还是c语言,2021 年全国计算机二级增考 WPS Office
  2. python安装汉化插件及翻译插件
  3. python pycharm 无法import win32api、win32con、win32com、win32gui 问题一次解决!方法合集
  4. 墨盒注墨后出现断线或堵头的处理方法
  5. 微型计算机原理目录,微型计算机原理与应用 目录
  6. 正则表达式常用匹配方式
  7. PHP调试工具 - FirePHP安装与使用方法
  8. Win XP 精简版安装SQL Server
  9. 使用java实现敏感词汇过滤功能
  10. vb mysql登录界面_VB\数据库--模拟系统登录界面