ubuntu20.04/RTX3090/TensorFlow/pytorch/GPU深度学习环境超详细配置实测

本文主要是介绍ubuntu20.04/RTX3090/TensorFlow/pytorch/GPU深度学习环境超详细配置实测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2021年,全球缺芯,许多电子产品产能严重不足,加上严峻的疫情,还有矿工黄牛囤货,导致显卡价格暴涨,就连各大平台也是陷入了一卡难求的境地。

RTX 30系列显卡大部分已经发售,但是真正能够享受到科技带来的福利的人少之又少。

 

就在去年,微星恩斯迈工厂厂区大量显卡产品竟然被盗,约有40箱RTX 3090,价值在220万元左右,官方也是悬赏10万希望知情人士提供线索。这就过分了,买不到就去偷,正所谓“年轻人完全不讲武德”。

如今深度学习类发展如火如荼,没有一张好显卡是不行的,这也间接加大了小伙伴们对于高端显卡的需求。

那么到底是什么原因,造成RTX 30系列显卡这么缺货呢?根据产业链人士的透露,NVIDIA RTX 30系列显卡供货紧张不是老黄估计吊大家胃口,而是代工厂商三星的8nm工艺良品率太低,老黄表示这锅我不背。

当然也并不是完全没有办法,国内知名图形工作站定制厂商ultralab近日推出一款支持4块GPU计算卡的超算便携图形工作站,该机器在移动计算应用环境里,可以说是目前市场上最强大的移动GPU超算平台,该机器有三种规格:P380G、PA410G、P630G

今天我们拿来一台P380G来安装一下ubuntu20.04LTs,以及NVIDIA CUDA,Anaconda3环境以及TensorFlow-GPU 2.5 nightly来验证一下是否适配RTX 30系列的GPU。

主要参数:

No

类别

产品型号

 

 

P380G

PA410G

1

CPU

Intel9代高频处理器

4核@4.8GHz

6核@4.9GHz

8@5.0G 

工业水冷散热模块

Intel10代至尊处理器

12@4.5GHz

14@4.4GHz

18@4.2GHz

工业水冷散热模块

2

芯片组

Intel Z390+PCH

Intel X299+PCH

3

内存

4 DDR4-2933,最大128GB

8DDR4-2666 最大384GB(PA400G)

8DDR4-2933 最大256GB(PA410G)

4

专业图卡

支持4块GPU双槽卡RTX3080/RTX3090/RTX A6000),

pcie 16x 3.0

5

系统盘

22.5SSD盘位(SATA接口,最大4TB),

1M.2 SSD盘位(pcie 4x,最大4TB

 

数据盘

13.5寸盘位(SATA接口,最大容量16TB

6

前端口

2USB 2.0

 

后置端口

6USB 3.0

2USB 3.1

Intel千兆以太

8声道音频

6USB 3.0

2USB 2.0

2USB 3.1

2x Intel千兆以太

8声道音频

 

PCI插槽

4xPCIe 16X 3.0

4x+4x+4x+4x

7xPCIe 16X 3.0

(8x+8x+8x+8x+8x+8x)

7

平台

箱体:便携一体

外形尺寸:433mm高*347mm宽*229mm深

电源:750w (标配),可选850w,1000w,2000W

液晶屏:17.3寸,4K(3840*2160)1670万色+100%sRGB,亮度300 nits,对比度1200:1

8

键盘鼠标

独立(USB口,无线蓝牙或有线)

9

操作系统

支持Windows 7/10window Server2016/2019

支持 Linux系列(RedhatUbuntuCentos,中标麒麟等)

10

噪音控制

基于办公环境,满负荷计算,噪音低于45分贝

11

其他参数

环境要求:0-50°C 操作温度; 10-80% 相对湿度

包装箱:拉杆式加固航空箱(双滚轮)

机器自重:10.69公斤

 

闲话少说,系统很快装完,换阿里源或者清华源:

~$ sudo vim /etc/apt/sources.list

插入如下内容:

#阿里源

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

安装vim、make、gcc、g++等,接下来就到安装NVIDIA显卡驱动啦,这个安装过的小伙伴都还记得那些坑吧。

  • NVIDIA驱动安装

首先禁用nouveau

~$ sudo vim /etc/modprobe.d/blacklist.conf

最后一行插入blacklist nouveau

然后

~$ sudo update-initramfs -u

重启

~$ lsmod | grep nouveau

如没有任何输出表示禁用成功

Ctrl+Alt+F1切换至字符界面,因本次测试桌面管理器为lightdm,所以先使用命令:

~$ sudo service lightdm stop  停止lightdm

ubuntu20.04默认桌面管理器为gdm3,可使用命令:

~$ cat /etc/X11/default-display-manager 查看您的桌面管理器

本次顺便测试nvidia最新版驱动(查看日期为2021年5月6日)

可以看到已经可以支持最新RTX A系列,后续会测试RTX A6000,敬请关注。

驱动下载完使用命令:

~$ sudo sh NVIDIA-Linux-x86_64-460.73.01.run

这里选Yes

完成后重启,如下图nvidia驱动安装完毕。

  • CUDA和cuDNN安装

尽管RTX 30系列GPU已经推出很长时间了,但是TensorFlow的更新目前正式版还是只有最高适配cuda11的tensorflow-gpu 2.4.0

 

难道RTX 30系列就无法适配了吗?还好有nightly

目前pypi上已经适配好了tf-nightly-gpu 2.6版本,但是无奈网速限制,只好使用国内pip源上的2.5版本,确认好tf版本,那么CUDA版本就确定为11,相对应的cuDNN为8.05

首先使用命令安装cuda11.0:

sudo ./cuda_11.0.3_450.51.06_linux.run

取消driver的安装,因为之前已经装好nvidia驱动,install

默认安装cuda路径为:/usr/local/cuda-11.0

~$ sudo vim ~/.bashrc 打开变量文件,添加老黄家祖传变量:

export CUDA_HOME=/usr/local/cuda-11.0

export PATH=/usr/local/cuda-11.0/bin${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} #64bit

export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}  #32bit

~$ source ~/.bashrc 立即生效

使用命令查看cuda版本:

~$ nvcc –version

    CUDA11安装完成。

然后解压cuDNN只需要把相应文件拷贝至对应目录即可

~$ sudo tar -zxvf cudnn-11.0-linux-x64-v8.0.5.39.tgz

sudo cp cuda/include/cudnn*.h /usr/local/cuda/include

sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64

sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

拷贝完成使用命令查看版本:

~$ cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

注意cudnn8版本文件为cudnn_version.h,而不是之前的cudnn.h

 

  • Anaconda3安装

官网或者清华镜像下载Anaconda3-2020.11-Linux-x86_64.sh

使用bash安装:

~$ bash Anaconda3-2020.11-Linux-x86_64.sh

这里选择默认路径

继续选择yes,直接写好变量,完成安装

~$ source ~/.bashrc

~$ conda –version 可查看版本

最后换为清华源:

可以通过修改用户目录下的 .condarc 文件或者使用conda config –add逐条添加:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r

conda config --set show_channel_urls yes

pytorch需添加:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

  • TensorFlow、pytorch安装

使用pip安装tf-nighly前,可以修改一下pip源为阿里云,以便提升下载速度

~$ sudo mkdir ~/.pip  ##创建.pip目录

~$ sudo vim ~/.pip/pip.conf   ##新建pip.conf配置文件

文件内容:

[global] 

index-url = https://mirrors.aliyun.com/pypi/simple

[install] 

trusted-host=mirrors.aliyun.com

 

首先conda create创建一个dl的环境:

~$ conda create -n dl python=3.8

~$ conda activate dl  ##激活dl环境

~$ pip install tf-nightly-gpu  ##安装TensorFlow

测试:

>>> import tensorflow as tf

>>> tf.__version__

版本为:2.5.0-dev20210210

>>> tf.test.is_gpu_available()

输出为True,RTX 3090适配成功

继续安装pytorch,pytorch安装很简单,清华镜像已经适配好1.7.1—cuda11.0,直接conda install安装即可:

~$ conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=11.0

导入测试:

>>> import torch

>>> torch.__version__

版本为1.7.1

>>> torch.cuda.is_available()

输出为True,torch安装完成

欢迎测试验证

 

这篇关于ubuntu20.04/RTX3090/TensorFlow/pytorch/GPU深度学习环境超详细配置实测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/757102

相关文章

Java调用DeepSeek API的最佳实践及详细代码示例

《Java调用DeepSeekAPI的最佳实践及详细代码示例》:本文主要介绍如何使用Java调用DeepSeekAPI,包括获取API密钥、添加HTTP客户端依赖、创建HTTP请求、处理响应、... 目录1. 获取API密钥2. 添加HTTP客户端依赖3. 创建HTTP请求4. 处理响应5. 错误处理6.

Spring AI集成DeepSeek的详细步骤

《SpringAI集成DeepSeek的详细步骤》DeepSeek作为一款卓越的国产AI模型,越来越多的公司考虑在自己的应用中集成,对于Java应用来说,我们可以借助SpringAI集成DeepSe... 目录DeepSeek 介绍Spring AI 是什么?1、环境准备2、构建项目2.1、pom依赖2.2

Goland debug失效详细解决步骤(合集)

《Golanddebug失效详细解决步骤(合集)》今天用Goland开发时,打断点,以debug方式运行,发现程序并没有断住,程序跳过了断点,直接运行结束,网上搜寻了大量文章,最后得以解决,特此在这... 目录Bug:Goland debug失效详细解决步骤【合集】情况一:Go或Goland架构不对情况二:

Python itertools中accumulate函数用法及使用运用详细讲解

《Pythonitertools中accumulate函数用法及使用运用详细讲解》:本文主要介绍Python的itertools库中的accumulate函数,该函数可以计算累积和或通过指定函数... 目录1.1前言:1.2定义:1.3衍生用法:1.3Leetcode的实际运用:总结 1.1前言:本文将详

Deepseek R1模型本地化部署+API接口调用详细教程(释放AI生产力)

《DeepseekR1模型本地化部署+API接口调用详细教程(释放AI生产力)》本文介绍了本地部署DeepSeekR1模型和通过API调用将其集成到VSCode中的过程,作者详细步骤展示了如何下载和... 目录前言一、deepseek R1模型与chatGPT o1系列模型对比二、本地部署步骤1.安装oll

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤

《SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤》本文主要介绍了SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤,文中通过示例代码介绍的非常详... 目录 目标 步骤 1:确保 ProxySQL 和 mysql 主从同步已正确配置ProxySQL 的

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

Springboot 中使用Sentinel的详细步骤

《Springboot中使用Sentinel的详细步骤》文章介绍了如何在SpringBoot中使用Sentinel进行限流和熔断降级,首先添加依赖,配置Sentinel控制台地址,定义受保护的资源,... 目录步骤 1: 添加 Sentinel 依赖步骤 2: 配置 Sentinel步骤 3: 定义受保护的