在 Linux 主机上配置了很多次 Cuda/CuDNN 的运行环境,在此记录下用到的脚本命令以复用。

特别提醒,先了解清楚 GPU 卡的型号,查清与主机 Linux 内核兼容的驱动程序、Cuda 和 CuDNN 的发行版。

请以 root 权限执行本文的所有 bash 命令。

1. NVIDIA 驱动安装

# WIKI: https://download.nvidia.com/XFree86/Linux-x86_64/375.20/README/installdriver.html
wget http://us.download.nvidia.com/tesla/384.145/NVIDIA-Linux-x86_64-384.145.run && \
chmod u+x NVIDIA-Linux-x86_64-384.145.run && \
./NVIDIA-Linux-x86_64-384.145.run --silent --dkms --accept-license

2. 打开持久模式

nvidia-smi -pm ENABLED # WIKI https://docs.nvidia.com/deploy/driver-persistence/index.html

4. GPU 设备信息查看

nvidia-smi
# +-----------------------------------------------------------------------------+
# | NVIDIA-SMI 384.145 Driver Version: 384.145 |
# |-------------------------------+----------------------+----------------------+
# | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
# | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
# |===============================+======================+======================|
# | 0 Tesla V100-PCIE... Off | 00000000:1A:00.0 Off | 0 |
# | N/A 34C P0 37W / 250W | 0MiB / 16152MiB | 0% Default |
# +-------------------------------+----------------------+----------------------+
# | 1 Tesla V100-PCIE... Off | 00000000:1F:00.0 Off | 0 |
# | N/A 36C P0 36W / 250W | 0MiB / 16152MiB | 0% Default |
# +-------------------------------+----------------------+----------------------+ nvidia-smi topo --matrix # 查看拓扑信息
# GPU0 GPU1 GPU2 GPU3 GPU4 GPU5 GPU6 GPU7 mlx5_1 mlx5_0 CPU Affinity
# GPU0 X PIX PIX PIX SYS SYS SYS SYS SYS SYS 0-15,32-47
# GPU1 PIX X PIX PIX SYS SYS SYS SYS SYS SYS 0-15,32-47
# GPU2 PIX PIX X PIX SYS SYS SYS SYS SYS SYS 0-15,32-47
# GPU3 PIX PIX PIX X SYS SYS SYS SYS SYS SYS 0-15,32-47
# GPU4 SYS SYS SYS SYS X PIX PIX PIX NODE NODE 16-31,48-63
# GPU5 SYS SYS SYS SYS PIX X PIX PIX NODE NODE 16-31,48-63
# GPU6 SYS SYS SYS SYS PIX PIX X PIX NODE NODE 16-31,48-63
# GPU7 SYS SYS SYS SYS PIX PIX PIX X NODE NODE 16-31,48-63
# mlx5_1 SYS SYS SYS SYS NODE NODE NODE NODE X PIX
# mlx5_0 SYS SYS SYS SYS NODE NODE NODE NODE PIX X nvidia-smi --id=0 --format=csv --query-gpu=utilization.gpu,memory.used
# utilization.gpu [%], memory.used [MiB]
# 0 %, 0 MiB

 5. CUDA Toolkit 安装

wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run && \
chmod u+x cuda_9.0.176_384.81_linux-run && \
./cuda_9.0.176_384.81_linux-run --toolkit --silent --verbos
cat << EOF >> /etc/ld.so.conf.d/cuda.conf
/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64
EOF
ldconfig
cat << EOF >> /etc/profile.d/cuda.sh
export PATH=/usr/local/cuda/bin:\$PATH
EOF
source /etc/profile

5. CuDNN 安装

# CuDNN 下载需要 Nvidia 账号。直接访问以下 URL,会被重定向到登录页面。
# https://developer.nvidia.com/compute/machine-learning/cudnn/secure/v7.0.5/prod/9.0_20171129/Ubuntu16_04-x64/libcudnn7_7.0.5.15-1+cuda9.0_amd64
dpkg -i libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb # 安装到 /usr/lib/x86_64-linux-gnu

配置 Nvidia GPU 主机的运行环境的更多相关文章

  1. EditPlus配置[C++] [Python] [Java] 编译运行环境

    以前一直用Codeblocks写C++,eclipse写Java,再在eclipse里面集成PyDev写Python,首先无法忍受代码自动补全功能(这个功能也许你万分喜欢),也无法忍受如此重量级的ID ...

  2. 01 sublime text3下配置c/c++ 的编译运行环境

    安装mingw,在线安装经常出问题,推荐离线安装 参考: https://blog.csdn.net/qq_34432960/article/details/106124496?utm_medium= ...

  3. 配置Sublime Text2的python运行环境(Sublime Text 3也类似)

    1. 前言 用Sublime Text 2 配置Python运用环境,有简单配置还有像IDLE一样的配置,本文分成第一部分和第二部分.   2. 配置 第一部分(简单配置)   1.只需要打开Pref ...

  4. hadoop——配置eclipse下的map-reduce运行环境 1

    1.通过修改实例模板程序来实现自己的map-reduce: 为了让示例程序run起来: 1)安装eclipse 2)安装map-reduce的eclipse插件 eclipse的map-reduce插 ...

  5. PhpStorm配置Apache与php的运行环境详细教程

    本文主要说明如何在phpstorm中配置已经安装好的PHP与apache.首先需要在本地安装php,这里我安装的是phpstudy 进入PHPstorm的界面点击file 下的settings 在La ...

  6. Win8操作系统下IIS如何配置asp.net的运行环境(win7同样)

    一.把鼠标放在电脑屏幕的左下角然后右击,弹出如下图菜单,选择“程序和功能”(快捷键win+X).(win7点击电脑左下角的“开始”,然后点击“控制面板”打开程序与功能界面): 二.进入程序与功能界面后 ...

  7. JDK的下载与Java运行环境

    JDK简介 什么是JDK JDK是Java Development Kit的缩写,意思是Java开发工具包.JDK就好比作人的心脏,人没有了心脏,生命也就失去存在的意义.Java也一样,JDK就是它的 ...

  8. Ubuntu16.04 faster-rcnn+caffe+gpu运行环境配置以及解决各种bug

    https://blog.csdn.net/flygeda/article/details/78638824 本文主要是对近期参考的网上各位大神的博客的总结,其中,从安装系统到跑通程序过程中遇到的各种 ...

  9. AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(二):配置WinClient分布式运行环境

    一.前言 AgileEAS.NET SOA 中间件平台是一款基于基于敏捷并行开发思想和Microsoft .Net构件(组件)开发技术而构建的一个快速开发应用平台.用于帮助中小型软件企业建立一条适合市 ...

随机推荐

  1. SpringCloud-OAuth2(三):进阶篇

    上篇文章讲了SpringCloud OAuth 的实战篇,但是在微服务环境下,常常会有一个认证中心. 而普通服务接收到请求后,判断token是否有效并不是自己处理的,因为token的管理统一交给认证中 ...

  2. vue 快速入门 系列 —— vue loader 下

    其他章节请看: vue 快速入门 系列 vue loader 下 CSS Modules CSS Modules 是一个流行的,用于模块化和组合 CSS 的系统.vue-loader 提供了与 CSS ...

  3. 96、linux之rpm包定制

    96.1.rpm包定制介绍: 编译安装软件,优点是可以定制化安装目录.按需开启功能等,缺点是需要查找并实验出适合的编译参数,诸如MySQL之类的软件编译耗时过长. yum安装软件,优点是全自动化安装, ...

  4. Vue(13)子组件与父组件超详细解析

    父组件和子组件 我们经常分不清什么是父组件,什么是子组件.现在来简单总结下:我们将某段代码封装成一个组件,而这个组件又在另一个组件中引入,而引入该封装的组件的文件叫做父组件,被引入的组件叫做子组件.具 ...

  5. 『无为则无心』Python序列 — 22、Python集合及其常用操作

    目录 1.Python集合特点 2.Python集合的创建 3.操作集合常用API (1)增加数据 @1.add()方法 @2.update()方法 (2)删除数据 @1.remove()方法 @2. ...

  6. js jquey 笔记

    1.使用insertAfter 如果插入在tr后添加多行数据,数据会倒过来注意组字符串需要倒着循环 1).html方法,给元素添加html代码或者清空html代码(参数为空字符串): 2).appen ...

  7. keycloak~自定义rest接口

    rest资源 对于我们集成keycloak来说,你可能会遇到它没有实现的功能,这时需要对kc进行扩展,资源的扩展是其中一个方面,它需要实现RealmResourceProvider和RealmReso ...

  8. 第一章 - Java与线程

    目录 01.Java和线程 02.Java与协程 03.CPU缓存结构和java内存模型 04.管程-悲观锁和锁优化 05.乐观锁 - 无锁方案 06.线程安全 07.线程池 08.JUC 09.高并 ...

  9. [心得笔记]spring常用的三种依赖注入方式

    一.目前使用最广泛的 @Autowired:自动装配 基于@Autowired的自动装配,默认是根据类型注入,可以用于构造器.接口.方法注入,使用方式如下: @Autowired 构造方法.方法.接口 ...

  10. mybatis 配置的log4j文件无效,不能正常显示日志信息

    正在学习mybatis,配置好后log4j.properties文件后,日志信息不能正常显示,没有效果. 查看了一下mybatis的相关文档,在日志一栏找到问题愿意 原因是我们的mybatis选了其他 ...