服务器入门操作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编号参数即可。

相关推荐
白-胖-子1 小时前
深入剖析大模型在文本生成式 AI 产品架构中的核心地位
人工智能·架构
caolib2 小时前
无需云服务器的内网穿透方案 -- cloudflare tunnel
运维·服务器·内网穿透·tunnel·cloudflared
誰能久伴不乏2 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
想要成为计算机高手2 小时前
11. isaacsim4.2教程-Transform 树与Odometry
人工智能·机器人·自动驾驶·ros·rviz·isaac sim·仿真环境
程序员学习随笔2 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
-SGlow-3 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
静心问道3 小时前
InstructBLIP:通过指令微调迈向通用视觉-语言模型
人工智能·多模态·ai技术应用
代码改变世界ctw3 小时前
Linux内核设计与实现 - 第14章 块I/O层
linux·运维·服务器
宇称不守恒4.03 小时前
2025暑期—06神经网络-常见网络2
网络·人工智能·神经网络
Dreams_l4 小时前
网络编程2(应用层协议,传输层协议)
运维·服务器·网络