【开发配置】配置一台4090主力开发机的完全过程手册
【开发配置】配置一台4090主力开发机的完全过程手册
1、硬件配置清单
硬件配置 | 数量 | 价格参考 |
---|---|---|
Intel i7 13700KF(cpu) | 1 | |
九州风神 冰魔方240 LT520(白) | 1 | |
华硕 ROG STRIX B760-I GAMING | 1 | |
海盗船 16G DDR5(6000MHZ) 复仇者 | 1 | |
西数 黑盘SN770 500G NVME | 2 | |
电竞判客AX RTX4090 X3W OC(白色) | 1 | |
闪鳞 S500 Type-c(白) | 1 | |
九州风神 DQ1000M-V3L | 1 |
2、操作系统
这里设置双系统,分别将两个系统安装在对应的固态硬盘上,实现物理隔离,分区安装ubuntu时直接全盘覆盖即可。
操作系统 | 安装隔离 |
---|---|
win11-专业版 | SN770 500G NVME-1 |
ubuntu22.04 | SN770 500G NVME-2 |
- win11镜像:
- ubuntu镜像:
3.Win11系统配置
....
4.Ubuntu系统配置
4.1 系统配置更新
首先进入系统后,要做的事情就是更新下一些配置;
sudo apt-get update
sudo apt-get upgrade
4.2 安装显卡驱动
其次,是安装英伟达4090显卡的驱动,以及相关的配置;
需要确保系统正确安装了NVIDIA GPU驱动。
CUDA 10.1要求最低显卡驱动版本为418.39;
CUDA 11.1要求最低显卡驱动版本为450.80.02;
CUDA 11.6要求最低显卡驱动为510.39.01。
执行以下指令检查驱动版本。
nvidia-smi
如果未安装GPU驱动,执行如下命令安装。
sudo apt-get update
sudo apt-get install ubuntu-drivers-common
sudo ubuntu-drivers autoinstall
安装完成后请重启系统。
重新执行下面命令,打印输出驱动信息,则说明驱动安装成功;
nvidia-smi
4.3 安装CUDA
仅安装驱动仍然无法使用显卡的算力资源,需要通过安装相应版本的CUDA进行配置;
可通过下列命令进行检查,是否可用;
nvcc -V
对于安装CUDA可通过下面的命令进行配置:
使用以下命令安装CUDA 11.6(推荐)。
wget https://developer.download.nvidia.com/compute/cuda/11.6.0/local_installers/cuda_11.6.0_510.39.01_linux.run
sudo sh cuda_11.6.0_510.39.01_linux.run
echo -e "export PATH=/usr/local/cuda-11.6/bin:\$PATH" >> ~/.bashrc
echo -e "export LD_LIBRARY_PATH=/usr/local/cuda-11.6/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
或者使用以下命令安装CUDA 11.1。
wget https://developer.download.nvidia.com/compute/cuda/11.1.1/local_installers/cuda_11.1.1_455.32.00_linux.run
sudo sh cuda_11.1.1_455.32.00_linux.run
echo -e "export PATH=/usr/local/cuda-11.1/bin:\$PATH" >> ~/.bashrc
echo -e "export LD_LIBRARY_PATH=/usr/local/cuda-11.1/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
或者使用以下命令安装CUDA 10.1。
wget https://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
sudo sh cuda_10.1.243_418.87.00_linux.run
echo -e "export PATH=/usr/local/cuda-10.1/bin:\$PATH" >> ~/.bashrc
echo -e "export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64:\$LD_LIBRARY_PATH" >> ~/.bashrc
source ~/.bashrc
当默认路径/usr/local/cuda存在安装包的时候,LD_LIBRARY_PATH环境变量不起作用;
若pytorch等框架对版本有特定要求,可同时安装多个版本的CUDA,从而进行管理与配置。
假设已经安装完成,通过下面这个命令,即可验证是否可用;输出版本号,则是对应CUDA当前可用版本;
nvcc -V
4.4 安装cuDNN
完成CUDA的安装后,在cuDNN页面登录并下载对应的cuDNN安装包。如果之前安装了CUDA 10.1,下载配套CUDA 10.1的cuDNN v7.6.x;如果之前安装了CUDA 11.1,下载配套CUDA 11.1的cuDNN v8.0.x;如果之前安装了CUDA 11.6,下载配套CUDA 11.6的cuDNN v8.5.x。注意下载后缀名为tgz的压缩包。假设下载的cuDNN包名为cudnn.tgz
,安装的CUDA版本为11.6,执行以下命令安装cuDNN。
tar -zxvf cudnn.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda-11.6/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.6/lib64
sudo chmod a+r /usr/local/cuda-11.6/include/cudnn.h /usr/local/cuda-11.6/lib64/libcudnn*
如果之前安装了其他CUDA版本或者CUDA安装路径不同,只需替换上述命令中的/usr/local/cuda-11.6
为当前安装的CUDA路径。
-
如果您的计算机有 NVIDIA® GPU,请确保满足以下条件,依赖库环境版本要求如下:
-
CUDA 工具包 10.2 配合 cuDNN v7.6.5, 如需使用 PaddleTensorRT 推理,需配合 TensorRT7.0.0.11
-
CUDA 工具包 11.2 配合 cuDNN v8.2.1, 如需使用 PaddleTensorRT 推理,需配合 TensorRT8.0.3.4
-
CUDA 工具包 11.6 配合 cuDNN v8.4.0, 如需使用 PaddleTensorRT 推理,需配合 TensorRT8.4.0.6
-
CUDA 工具包 11.7 配合 cuDNN v8.4.1, 如需使用 PaddleTensorRT 推理,需配合 TensorRT8.4.2.4
-
如需使用分布式多卡环境,需配合 NCCL>=2.7
-
GPU 运算能力超过 3.5 的硬件设备
您可参考 NVIDIA 官方文档了解 CUDA、CUDNN 和 TensorRT 的安装流程和配置方法,请见CUDA,cuDNN,TensorRT
-
-
如果您需要使用多卡环境请确保您已经正确安装 nccl2,或者按照以下指令安装 nccl2(这里提供的是 CUDA10.2,cuDNN7 下 nccl2 的安装指令,更多版本的安装信息请参考 NVIDIA官方网站):
-
Centos 系统可以参考以下命令
wget http://developer.download.nvidia.com/compute/machine-learning/repos/rhel7/x86_64/nvidia-machine-learning-repo-rhel7-1.0.0-1.x86_64.rpm
rpm -i nvidia-machine-learning-repo-rhel7-1.0.0-1.x86_64.rpm
yum update -y
yum install -y libnccl-2.7.8-1+cuda10.2 libnccl-devel-2.7.8-1+cuda10.2 libnccl-static-2.7.8-1+cuda10.2
-
Ubuntu 系统可以参考以下命令
wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb
dpkg -i nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb
sudo apt install -y libnccl2=2.7.8-1+cuda10.2 libnccl-dev=2.7.8-1+cuda10.2
-
4.5 安装gcc等
sudo apt install gcc
sudo apt install g++
4.6 安装输入法
对照文档安装即可;
4.7 安装git与gedit
sudo apt install git
sudo apt install gedit
配置ssh key:
RSA, ECDSA, ED25519, ECDSA_SK, or ED25519_SK
RSA,DSA,ECDSA,EdDSA和Ed25519都用于数字签名,但只有RSA也可以用于加密。
RSA(Rivest–Shamir–Adleman)是最早的公钥密码系统之一,被广泛用于安全数据传输。它的安全性取决于整数分解,因此永远不需要安全的RNG(随机数生成器)。与DSA相比,RSA的签名验证速度更快,但生成速度较慢。
DSA(数字签名算法)是用于数字签名的联邦信息处理标准。它的安全性取决于离散的对数问题。与RSA相比,DSA的签名生成速度更快,但验证速度较慢。如果使用错误的数字生成器,可能会破坏安全性。
ECDSA(椭圆曲线数字签名算法)是DSA(数字签名算法)的椭圆曲线实现。椭圆曲线密码术能够以较小的密钥提供与RSA相对相同的安全级别。它还具有DSA对不良RNG敏感的缺点。
EdDSA(爱德华兹曲线数字签名算法)是一种使用基于扭曲爱德华兹曲线的Schnorr签名变体的数字签名方案。签名创建在EdDSA中是确定性的,其安全性是基于某些离散对数问题的难处理性,因此它比DSA和ECDSA更安全,后者要求每个签名都具有高质量的随机性。
Ed25519是EdDSA签名方案,但使用SHA-512 / 256和Curve25519;它是一条安全的椭圆形曲线,比DSA,ECDSA和EdDSA 提供更好的安全性,并且具有更好的性能(人为注意)。
其他说明
RSA密钥使用最广泛,因此似乎得到最好的支持。
ECDSA(在OpenSSH v5.7中引入)在计算上比DSA轻,但是除非您有一台处理能力非常低的机器,否则差异并不明显。
从OpenSSH 7.0开始,默认情况下SSH不再支持DSA密钥(ssh-dss)。根据SSH标准(RFC 4251及更高版本),DSA密钥可用于任何地方。
Ed25519在openSSH 6.5中引入。
-
ssh key的类型有四种,分别是dsa、rsa、 ecdsa、ed25519。
-
根据数学特性,这四种类型又可以分为两大类,dsa/rsa是一类,ecdsa/ed25519是一类,后者算法更先进。
-
dsa因为安全问题,已不再使用了。
-
ecdsa因为政治原因和技术原因,也不推荐使用。
-
rsa是目前兼容性最好的,应用最广泛的key类型,在用ssh-keygen工具生成key的时候,默认使用的也是这种类型。不过在生成key时,如果指定的key size太小的话,也是有安全问题的,推荐key size是3072或更大。
-
ed25519是目前最安全、加解密速度最快的key类型,由于其数学特性,它的key的长度比rsa小很多,优先推荐使用。它目前唯一的问题就是兼容性,即在旧版本的ssh工具集中可能无法使用。不过据我目前测试,还没有发现此类问题。
再总结一下:
如果可以的话,优先选择ed25519,否则选择rsa。
4.8 内存及磁盘相关工具
内存资源可视化分析工具
sudo apt install gdmap
gdmap
sudo apt-get install gparted
gparted
4.9 截图工具
sudo apt install flameshot
flameshot gui
ubuntu开发环境配置
Anaconda安装配置
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py38_4.12.0-Linux-x86_64.sh
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.03-Linux-x86_64.sh
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2023.03-Linux-x86_64.sh
sh Anaconda3-2023.03-Linux-x86_64.sh
IDE安装配置与激活
对照该Github repo的下载链接与安装激活步骤执行即可;
Pytorch安装
# CUDA 11.6
pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116
# CUDA 11.7
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
Pytorch2.0安装
pip3 install torch torchvision torchaudio
TensorFlow安装
系统安装
pip3 install --user --upgrade tensorflow # install in $HOME
验证安装效果:
python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"
PaddlePaddle安装
python -m pip install paddlepaddle-gpu==2.4.2.post116 -f https://www.paddlepaddle.org.cn/whl/linux/mkl/avx/stable.html
Mindspore安装
pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/2.0.0rc1/MindSpore/unified/x86_64/mindspore-2.0.0rc1-cp37-cp37m-linux_x86_64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
数据集api下载与管理
kaggle
pip install kaggle
chmod 600 ~/.kaggle/kaggle.json
e.gs示例:
kaggle datasets download -d manchvictor/coco20142
opendatalab
pip install opendatalab
pip install pyqt5==5.15 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyqtwebengine==5.15 -i https://pypi.tuna.tsinghua.edu.cn/simple
odl info ILSVRC2012_Images # 查看此数据集的元数据
odl ls ILSVRC2012_Images # 查看此数据集的文件列表
odl get ILSVRC2012_Images # 下载此数据集
docker配置
参考材料
1.https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/pip/linux-pip.html
2.https://www.mindspore.cn/install
3.https://blog.51cto.com/u_15127634/4361097