服务器入门操作1(深度学习)

服务器相关

基本命令

查看GPU状态:

  • 查看GPU信息

  • 查看CPU信息

  • 查看系统版本号

    nvidia-smi
    lscpu
    lsb_release -a

清屏:

复制代码
clear

anaconda相关:

  • 查看环境列表

  • 激活虚拟环境

  • 退出虚拟环境

  • 跳转至目录

  • 跳转至上一级目录

    conda env list
    conda activate [环境名]
    conda deactivate [环境名]
    cd [路径]
    cd ..

进入虚拟环境后:

  • 查看虚拟环境中的package

  • 安装新的package

  • 执行python文件

    pip list
    pip install [package name]
    python [文件名].py

ctrl+c: 停止当前命令的执行

在命令行运行python:

  • 进入python环境:python
  • 退出环境:Ctrl+D / exit() (Linux环境)

后台运行

screen

【【Linux后台运行】服务器系列-Screen的使用教程】 https://www.bilibili.com/video/BV1De4y1F7C3/?share_source=copy_web&vd_source=3aa9ee0c4fcf2e52762a44f906c09534

Ubuntu安装:apt install screen

安装好以后:which screen 可以看到它的路径

功能:1 分屏 2 后台运行

常用参数和使用方法:

  • 将命令挂到后台运行:screen -dmS
    e.g. screen -dmS train_net1 bash -c "python train.py"
    前面的train_net1是给这个screen起的名字,双引号里面是真正要执行的命令。
  • 显示所有screen:screen -ls
  • 将后台的screen拉回前台,并查看实时输出:screen -r [screen的名称]
    e.g. screen -r train_net1
  • 重新将screen放回后台:Ctrl+A, 松开Ctrl和A以后按D键
  • 停止screen:
    • 先拉回前台,然后用正常方法关闭(Ctrl+C)
    • 强行停止:screen -XS [screen的名称] quit
    • 还是停不掉的话就用htop+任务管理器停止

创建快捷方式(可简化流程,不过由于是自己定义的,会有一定的独特性):vim ~/.bashrc 其中会引入~/.bash_aliases就是用户自己起的所有的别名

指定特定编号的GPU训练

通过环境变量指定:

在运行代码前,使用CUDA_VISIBLE_DEVICES环境变量直接限定可见的GPU:

复制代码
CUDA_VISIBLE_DEVICES=0,1 python train.py

CUDA_VISIBLE_DEVICES=2 python train.py

此环境变量会屏蔽其他的GPU,程序只能看到指定的GPU;全局生效,无需修改代码。

此方式亦可以结合screen使用:

创建screen:

复制代码
screen -dmS train_net1 bash -c "CUDA_VISIBLE_DEVICES=2 python train.py"

这样的话就可以使用编号为2的GPU进行训练啦!

如果程序里使用parser.add_argument()声明了GPU编号或者在json文件中声明了默认GPU编号,则可能出现上述方法不好用的情况。此时只需要根据程序内容,传入相关的GPU编号参数即可。

相关推荐
汤姆yu3 分钟前
基于深度学习的健康饮食推荐系统
人工智能·深度学习
2501_9411491111 分钟前
AI与自动化:未来工作的变革与机遇
人工智能
张人玉13 分钟前
OCR 字符识别助手详解(含 Halcon 示例)
人工智能·机器学习·计算机视觉·halcon
z***I39431 分钟前
Git机器学习
人工智能·git·机器学习
CappuccinoRose32 分钟前
MATLAB学习文档(二十八)
开发语言·学习·算法·matlab
BUG_MeDe41 分钟前
openssl 生成自签名证书步骤
服务器·https·ssl·数字证书
运维行者_1 小时前
网站出现 525 错误(SSL 握手失败)修复指南
服务器·网络·数据库·redis·网络协议·bootstrap·ssl
Forest_HAHA2 小时前
<10>_Linux网络基础(上)
linux·服务器
('-')2 小时前
《从根上理解MySQL是怎样运行的》第四章学习笔记
笔记·学习·mysql
dreamtm1232 小时前
TCP 滑动窗口:像 “批量寄快递 + 收件人调速” 的高效协作
服务器·网络·tcp/ip