AMD Ryzen Threadripper 2990WX和intel 9980XE 用于第一性原理计算对比

Intel MPI 配置与基本使用 安装 Document 系统配置/含NFS 编译环境 设置 加载 mpivars.[c]sh 脚本。 创建文本文件 mpd.hosts ,其中保存有集群的节点列表,每行一个名字 (只针对开发者) 确保环境变量 PATH 中包含有相应的编译器,比如 icc。 (只针对开发者) 使用适当的编译驱动编译测试程序,比如 mpiicc。 $ mpiicc -o test test.c 使用 mpirun... 阅读详情

       目前除去工作站服务器多路CPU,个人桌面CPU性能也不断提高,特别是年初AMD发布了第二代线程撕裂者CPU,同时intel也是在原来7980XE的基础上发布了升级后主频更高的i9 9980XE,目前从各种测评和核数线程等来看,AMD的线程撕裂者2990WX拥有32核64线程,网上各种测评都暗示其性能在intel之上。

        但是,除了程序多开等应用,具体到数值并行计算,特别是第一性原理计算等需要矩阵迭代等Fortran以及C++编写的程序,两者性能如何?

       这里使用24原子体系以及57原子体系,利用Quantum-espresso程序计算,k格点等计算参数经过收敛测试。

       首先利用intel 7980XE,内存使用8条8G 2666MHz内存,cpu无超频,2.6GHz,使用MKL库,编译使用intel编译器ifort(比使用GNU版本普通编译器提升约2倍),使用openmpi作为并行程序。则24原子体系,每次迭代平均用时20s;57原子体系每次100~110s;

       利用AMD的线程撕裂者2990WX,内存使用4条16G 2666MHz,由于AMD cpu无专用编译器,只有OpenBLAS数学库有针对zen处理器的优化,同时AMD官网提供一些数学库(AOCL),链接https://developer.amd.com/amd-cpu-libraries/,BLAS库,计算同样24原子体系(计算全程没有超频):

      1.不使用任何专用库,用GNU版本编译器和数学库,使用openmpi并行编译,计算使用32核,24原子体系每次迭代用时85s;mpirun使用8核数,时间128s,可见mpirun多核后效率提升不明显。

      2. 使用openBLAS库,编译器采用GNU版本,使用openmpi并行计算,发现计算使用4核效率最高,24原子体系每次迭代用时65s;mpirun使用核数增大,计算效率降低。

      3. 并行计算使用mpich,同openmpi差别不大。

     总结:使用openBLAS数学库后,AMD 芯片计算效率有显著提升,但是对于AMD Ryzen 2990WX,单程序数值计算并行效率随核数增大反而降低,对原子数较小的体系,计算效率随核数增加下降明显,最优核数反倒仅使用4核计算时获得,此时性能大于为intel 7980 XE的1/3,随着原子体系增大,如对57原子体系,AMD 这款cpu最优核数为12,此时性能约为intel 7980XE的1/2。

    综上,从程序窗口多开的角度看,AMD的线程撕裂者性能遥遥领先,但是对于单程序多核计算,目前针对AMD的优化还不够,导致CPU的性能没有全部发挥,不严谨的说,在目前优化状态下,针对小原子体系计算,AMD Ryzen 2990wx相当于8台安装MKL库后的6核芯片,程序多开角度来看性能强大,但是对于单个并行程序每台的极限性能只有intel 18核7980XE的1/3;随着原子数目增大,AMD 线程撕裂者的性能提升明显,接近于优化后intel芯片的1/2。并且目前问题只是优化问题,并且对于AMD芯片还有超频等选项,也不排除更大数目原子体系计算效率会更接近与intel 7980芯片整体性能。

    所以建议根据用途确定cpu平台,intel做数值计算等有优势,容易发挥出多核性能,AMD针对数值计算优化不多,但是程序多开等应用优势明显,对于单程序多核并行计算优化不够,导致对于小原子体系性能随核数增加反而下降,多核性能不能完全发挥。

 

 

 

并行计算工具 MPI 简单教程 我们将首先创建两个变量 process_Rank 和 size_Of_Cluster,分别存储每个并行进程的标识符和集群中运行的进程数。这应该为您的环境准备好编译和运行 MPI 代码所需的所有工具。在本教程中,我们将命名我们的代码文件:hello_world_mpi.cpp。在作业脚本中,加载上面用于编译程序的相同编译器和 OpenMPI 选择,并使用 Slurm 运行作业以执行应用程序。现在让我们设置几个 MPI 指令来并行化我们的代码。该函数返回调用该函数的处理器的进程ID。 阅读详情

相关推荐

软件部署第二弹-Quantum Espresso在linux系统上的安装教程

如何在linux系统下快速部署Quantum Espresso

u013206206的博客 2851

AMD 2990WX并行计算工作站

CPU:2990wx                               &nbs...

wanwang1996的博客 2812

六自由度机器人(机械臂)运动学建模及运动规划系列(一)——简介

毕业设计做了六轴机器人相关的课题,做完之后学到很多,在这里分享一下。

weixin_47849087的博客 2万+

如何安装和使用Intel MPI

1.安装Intel MPI (1)下载Intel MPI。 (2)下载地址:Intel® MPI Library 执行以下命令,解压并安装Intel MPI。 以l_mpi_2018.0.128.tgz为例: # tar -xvf l_mpi_2018.0.128.tgz # cd l_mpi_2018.0.128/ # ./install.sh 图1Intel MPI成功安装 2.配置环境变量 (1)普通用户下,在“~/.bashrc”中添加: export .

小男孩儿的博客 1万+

Lumerical FDTD新手教程:5步搞定MMI波导光谱模拟(附避坑指南)

本文提供Lumerical FDTD新手教程,详细讲解5步完成MMI波导光谱模拟的实用方法,包括环境准备、结构建模、光源配置、仿真优化和结果分析。特别针对多模干涉耦合器(MMI)的模拟难点,提供避坑指南和优化策略,帮助光学工程师快速掌握FDTD仿真技术。

kite3的博客 359

基于分数阶傅里叶变换的chirp信号检测与参数估计(原理附代码)

线性调频信号(chirp信号) 顾名思义,该信号的频率随着时间线性变换,其复数表达形式如下: s(t)=e2jπ(f0t+0.5μt2)s(t)=e^{2j\pi(f_0 t+ 0.5\mu t^2)}s(t)=e2jπ(f0​t+0.5μt2) 根据欧拉公式,其相位项为2π(f0t+0.5μt2))2\pi(f_0 t+ 0.5\mu t^2))2π(f0​t+0.5μt2))。信号的角频率是相位对时间的导数。对相位求导后有2π(f0+μt)2\pi(f_0+\mu t)2π(f0​+μt),显然,f0f

weixin_42845306的博客 1万+

vasp 安装_各种版本VASP的编译-AMD yes(并不)篇

前段时间用AMD二代EPYC跑VASP很香,解锁Intel MKL的威力后,竟然相同核数比Xeon Gold都略快一些,不久前AMD Zen3也发布了,AMD yes!不过之前在Zen2上跑VASP用的还是Intel全家桶,于是想着如果换成AMD全家桶(AOCC+AOCL)会不会更yes。然而事与愿违,一下子就no了起来。以下将介绍用AMD全家桶编译VASP的方法供参考,以及目前存在的问题。AOC...

weixin_39872044的博客 4795

Go-zero微服务实战:从零搭建电商用户系统(含完整代码示例)

本文详细介绍了如何使用go-zero框架从零搭建电商用户系统,包含完整的微服务架构设计、核心功能实现代码示例以及性能优化策略。通过分层架构设计、JWT认证、分布式锁等关键技术,实现高并发、高可用的用户系统,适用于电商平台开发。

weixin_29275257的博客 255

计算机的第一性原理,第一性原理计算电脑配置

产品名称 型号 数量 单价(元) 报价(元)CPU Intel 酷睿i7 5820K ...

weixin_34374684的博客 1157

矩阵LED和矩阵按键

先说矩阵LED,如图: 下面以行几、列几的表达方法说明 三极管可以当做开关使用 由图可知,如果想让一个LED亮,那么它对应的行和列的三极管都要导通。如果这个矩阵每次只亮一个LED,那么正常写程序没问题。 如果我们想让LED1和LED6亮,其他灯不亮,则需要开启行1、行2、列1、列2,随之带来的问题就是LED2和LED5也会跟着亮起来。 解决方法类似于扫描,因为单片机运行速度很快,可以在很短的时间内开关数次而肉眼看不到。所以我们可以每次只亮一列(排)灯,亮单位时间后关掉同时开启另外一列(排),如此四次一循环

qq_46615634的博客 5789

TypeError: XGBClassifier.fit() got an unexpected keyword argument ‘early_stopping_rounds‘ 解决方案

本文主要介绍了TypeError: XGBClassifier.fit() got an unexpected keyword argument 'early_stopping_rounds’解决方案,希望能对使用XGBoost的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 1万+

搭建mpi测试环境,使用intell的mpi库

搭建intell mpi测试环境

bbs165198646的博客 1239

PHP与Node.js的对比及优缺点分析

PHP和Node.js是两种常用的服务器端编程语言,它们在不同的应用场景下各有优势和劣势。本文将全方位比较PHP和Node.js的特点,以及它们在编程中的优缺点,并提供相应的源代码示例供参考。需要注意的是,本文只是对PHP和Node.js的一些优缺点进行了简要介绍,实际应用中还需要考虑其他因素,如团队经验、项目规模和预算等。最终的选择应该基于全面的评估和需求分析。PHP:PHP是一种同步阻塞的编程语言,它的处理方式是一次只处理一个请求。Node.js:Node.js的性能较高,特别适合处理高并发的请求。

ByteSparkX的博客 887

适用于Windows*操作系统的英特尔MPI库参考手册:1-3

2.命令参考 本节提供有关不同命令类型以及如何使用这些命令的信息:  编译器命令  作业启动命令  简单多用途守护程序*  处理器信息实用程序

haimianjie2012的专栏 1499

YOLOv5源码逐行超详细注释与解读(5)——配置文件yolov5s.yaml

全网最详细的YOLOv5源码解读之配置文件yaml。逐行注释,逐句讲解,一文带你了解yaml。小白必看!

路人贾的博客 1万+

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

搭建高性能计算环境(三)、安装intel编译器和mpi

转自 ​​​​​​​搭建高性能计算环境(三)、安装intel编译器和mpi - iDove - 博客园

LangDaoShiJie的博客 7597

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

MPI编程及性能优化

第1节 MPI简介 1.1 MPI及其历史 与OpenMP相似,消息传递接口(Message Passing Interface,简称MPI)是一种编程接口标准,而不是一种具体的编程语言。该标准是由消息传递接口论坛(Message Passing Interface Forum,简称MPIF)发起讨论并进行规范化的。 MPI标准从1992年开始起草,1994年发布第一个版本MPI-1(MPI

GarfieldEr007的专栏 1万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

intel mpi 配置与使用

1.安装与卸载 1)install: [root@blade1 ~]# tar xzvf l_mpi_p_4.0.3.008.tgz  [root@blade1 ~]# cd l_mpi_p_4.0.3.008 [root@blade1 l_mpi_p_4.0.3.008]# ls cd_eject.sh  INSTALL.html  install.sh  license.txt

xiaolantian的专栏 2万+

linux修改编译的MPI环境(intel oneMPI、openMPI)

可以看到MPI环境变成了安装地址下的/usr/local/openmpi/bin/mpirun。至此,我们的最终目的达到!

m0_46808930的博客 4425

MPI(OpenMPI和MPICH(IntelMPI、MVAPICH))和OpenMP

此博文包含图片 (2018-11-04 21:37:12) http://blog.sina.com.cn/s/blog_151391cb60102z0e3.html 标签: it 杂谈 分类: Linux 一、MPI多机并行接口协议 定义: MPI:Message-Passing Interface,“消息传递接口”协议 特点: 进程级;分布式存储;显式;可扩展性好;编程复杂 需要分析及划分应用程序问题,并将问题映射到分布式进程集合 需要解决通信延迟大和负载不平衡两个主要问题 集群资源不够起所有insta

weixin_44004788的博客 1万+

windows下用intel 编译器 构建mpi并行程序

windows下用intel 编译器 构建mpi并行程序在使用软件的时候,最好首先去官网了解一下软件说明,比如intel parallel studio的说明,特别是release note,这样对于需要什么样的环境和安装要求就会比较清楚,而不用自己去尝试,也就不用浪费时间了。目前intel的编译器整合成一个intel parallel studio,这套软件分不同的版本,其中cluster版本带有

xenonhu的博客 6113

万字硬核科普|别再被“MPI网络”骗了!MPI根本不是网络,而是让超算飞起来的“并行魔法”!

MPI本质解析与高性能计算实践 摘要:MPI(消息传递接口)并非物理网络,而是并行计算的编程标准。本文澄清常见误解,解析MPI作为应用层编程接口的实质(200字)。通过军队通信的比喻说明其分布式内存模型特性,对比主流实现(Open MPI/MPICH)。重点剖析MPI依赖的底层网络设施:以太网、InfiniBand(RDMA技术)及超算专用互连,揭示不同方案的性能差异(延迟/带宽)。文章包含MPI在OSI模型中的定位图解,并强调共享内存优化对单节点多核计算的关键作用。最后提供代码示例和性能数据,帮助开发者实

DreamLife&Yaothos 2403

Intel MPI(Intel® MPI Library)的环境变量

Intel MPI(Intel® MPI Library)提供了丰富的环境变量,用于控制运行时行为、性能调优、调试、资源分配等。调试级别(0-1000+),值越高输出越详细。是否尊重作业调度器的进程放置(SLURM 等)。指定 mpirun 启动进程时使用的网络接口。手动指定进程绑定到的 CPU 列表(如。启用兼容模式(如与 MPICH 兼容)。指定 TCP 通信使用的网络接口(如。控制共享内存通信的大消息传输机制(如。设置进程绑定的 CPU 域(如。启用动态日志(用于性能分析)。

weixin_42849849的博客 1251

使用VS2019+Intel OneAPI (ifort)+Intel MPI编译和运行MPI程序与Coarray程序

使用VS2019+Intel OneAPI (ifort)+Intel MPI编译和运行MPI程序与Coarray程序 一、安装环境 安装vs2019 安装Intel OneAPI Base Toolkit中的Intel Fortran Compiler,并勾选与vs2019适配 安装Intel OneAPI HPC Toolkit中的Intel MPI 运行intel mpi安装目录下/env/vars.bat进行环境变量的注册,路径为<install-dir>\mpi\<versio

PilotJohnWu的博客 7884

有限元分析多机集群模拟计算结构、流体、热分析、多物理场耦合、电磁仿真

ANSYS HFSS是目前市场客户最多的一款3D电磁(EM)仿真软件,用于设计和仿真高频电子产品,如天线,天线阵列,射频或微波元件,高速互连,滤波器,连接器,IC封装和印刷电路板。全球工程师使用ANSYS HFSS设计通信系统,雷达系统,高级驾驶员辅助系统(ADAS),卫星,物联网(IoT)产品和其他高速RF和数字中的高频,高速电子设备。 集群支持其他软件: ANSYS fluent CFX Fl...

weixin_44913544的博客 2472

奥维ovobj 文件,转化为shp文件,再变sql文件导入到pgsql里

先变 KML 文件。 再用 QGIS的矢量 变成 shp文件。 ** 最后 。 shp2pgsql -W utf8 -s 4326 /home/manbug/ningbo/NB.shp ningbo_524>/home/manbug/ningbo/NBnew.sqlhttps://www.cnblogs.com/think8848/p/6929351.html...

qq_33805714的博客 8237
上一篇: ubuntu更换gfortran,gcc等编译器的版本
下一篇: 使用GULP(General Utility Lattice Program)拟合经典势能模型的方法
odin_linux
博客等级 码龄8年 93粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值