在使用lammps的gpu加速的时候遇到了很多问题,这个问题看了很多论坛都没有找到好的解答,把我的情况和解决方案记录在这里,希望对大家有帮助。

一、报错情况

输入命令:

haichao@node01:~/JUNJIE/test_pureMC$ mpirun -np 64 lmp_mpi -sf gpu -pk gpu 1 -in pureMC3.in

( pureMC3.in 是我的in文件)

终端输出如下:

LAMMPS (8 Feb 2023)
ERROR: Unable to initialize accelerator for use (../gpu_extra.h:65)
Last command: package gpu 1
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 429.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 430.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 429.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 430.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 429.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 430.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 429.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 430.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 429.
Cuda driver error 4 in call at file 'geryon/nvd_device.h' in line 430.

(截取了部分界面,主要的报错信息就是ERROR后面的语句以及cuda drive error 4)

二、解决方案

输入命令:

haichao@node01:~/JUNJIE/test_pureMC$ mpirun -np 4 lmp_mpi -sf gpu -pk gpu 1 -in pureMC3.in

###注意:这里的唯一改动就在于把并行运算的cpu核心数目从‘64’改为了‘4’!###

终端输出如下:

LAMMPS (8 Feb 2023)
Reading data file ...orthogonal box = (2.2220993 0 -40.8) to (126.79883 129.02093 81.6)2 by 2 by 1 MPI processor gridreading atoms ...118800 atomsreading velocities ...118800 velocitiesread_data CPU = 0.320 seconds
Setting atom values ...237 settings made for type/ratio
Setting atom values ...47 settings made for type/ratio
Reading eam/alloy potential file MgCuAl.eam.alloy with DATE: 2023-03-01

后面就是正常的运行了,问题得到了解决< ^_^ >

三、总结

对于这个问题的原因,很明显就是在使用GPU加速的时候CPU核心数目过多了而导致的。我还不太清楚为什么会这样,我看到网上有人发帖说 “在用GPU加速算法的时候,在同样的GPU使用情况下,使用数量多的CPU反而计算速度下降,这可能是因为MD的运算都在GPU中运行,而过多的CPU数目反而会增加各个计算板块之间的通信时间。” 类比思考一下,我这个报错可能是因为GPU加速算法并支持过多核数的CPU计算(没有测试过具体多少核数是上限度),因此产生了报错。

最后想补充一下我使用4CPU+1GPU的运算速度比我使用128CPU的运算速度还要快(没有定量计算过,在终端输出上肉眼就能看出来),所以GPU不能支持过多核数的CPU运算这个缺点是可以被GPU的速度弥补起来的。

lammps—报错记录—gpu加速—ERROR:unable to initialize —cuda driver error 4 ... ‘geryon/nvd_device.h‘相关推荐

  1. kudu : 扩容报错 Bad status: Not found: Unable to initialize catalog manager

    文章目录 1.美图 2.背景 1.美图 2.背景 kudu 原本只有一个master 和一个 tableServer 现在我想扩容成3个master ,3个tableServer ,然后报错了 错误信 ...

  2. keil 5 报错记录:..\OBJ\templiate.axf: Error: L6218E: Undefined symbol PcdHalt (referred from rc522.o).

    keil 5 报错记录:-\OBJ\templiate.axf: Error: L6218E: Undefined symbol PcdHalt (referred from rc522.o). 先来 ...

  3. Errors报错记录

    Errors报错记录 前言 Error1 Error2 Error3 Error4 Error5 Error6 Error7 Error8 Error9 Error10 Error11 总结 前言 记 ...

  4. Goaccess报错记录

    目录 Goaccess报错记录 geoip功能使用 Goaccess报错记录 Error occurred at: src/websocket.c - ws_socket - 2782 Unable ...

  5. php curl 不验证ssl,PHP Curl https跳过ssl证书认证报错记录及解决

    PHP Curl https跳过ssl证书认证报错记录及解决 function get($url = '', $cookie = '') { $ch = curl_init(); curl_setop ...

  6. Superset执行「superset db upgrade」命令的报错记录

    Superset执行「superset db upgrade」命令的报错记录 文章目录 Superset执行「superset db upgrade」命令的报错记录 零.写在前面 一.「superse ...

  7. Flutter 新手之路,报错记录01

    Flutter 新手之路,报错记录 搭建好 Flutter 开发环境,创建一个 Flutter 工程,可以在手机上任意跑 但是,今天导入了另一个工程,发现跑不动呀 service disabled! ...

  8. superset db upgrade报错记录

    superset db upgrade报错记录 报错1 报错2 报错3 报错4 报错5 报错6 成功了 报错1 (superset) [hyj@hadoop102 ~]$ superset db up ...

  9. 【jenkins打包maven项目报错记录】

    jenkins打包maven项目报错记录 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3 ...

最新文章

  1. LSGO软件技术团队招新 线下组队学习
  2. 投影幕布尺寸计算器_如果把投影幕布安装在家里,有哪些安装位置和方式?
  3. linux端口访问规则,linux 查看开发放端口号--iptables
  4. Windows Embedded CE 6.0开发初体验(三)设置Boot-loader
  5. Swift语法3.03(类型Types)
  6. 2022年互联网+全国大学生创新创业大赛解读
  7. 《剑指offer》Java版全系列题解(2021版,持续更新!)
  8. 数据地图在商业数据分析中的5种应用
  9. C#保存图片、压缩图片大小、缩放图片比例
  10. 【一年总结】记我的大一生活
  11. 送客户的祝福语_送给客户的温馨祝福语
  12. 幕墙图纸:玻璃加工图纸的绘制
  13. Machine learning system design - Data for machine learning
  14. 最有特点的、最有深度的网名分享:2012╰菿來啲那天
  15. [转]Python中找出dataframe中的重复的行 DataFrame.duplicated()方法
  16. ECharts3D环型图,设置某一部分弧度的高度
  17. mysql宕机恢复_mysql突然宕机后事务如何处理?
  18. perl 常用模块使用例子
  19. Ubuntu开启VNC屏幕共享
  20. 硬件工程师必须掌握的测试工具----示波器

热门文章

  1. ref和out参数(2)——ref(C# 参考)
  2. 爱奇艺播放器老板键试玩
  3. 亲测!UEFI启动模式下,电脑安装win10和Ubuntu双系统
  4. Android中MediaPlayer播放音乐时自动中断的解决办法
  5. 还在随大流用PostMan?快来试试Apipost吧
  6. Python将视频或者动态图gif逐帧保存为图片
  7. 修改jar包文件,重新打包jar
  8. 形状工具应用——制作巧克力
  9. 三星从苹果手中夺回智能手机市场领先地位
  10. 微信支付V3==>公众号支付、踩坑、简单记录