Conda基本使用
Conda是Python的包管理软件. 以下是一些常用的Conda指令
操作 | 指令 | 操作 | 指令 |
---|---|---|---|
创建环境 | conda create -n <envname> |
删除环境 | conda remove -n envname --all |
激活环境 | conda activate <envname> |
退出环境 | conda deactivate |
列出环境 | conda env list |
列出安装包 | conda list |
导出环境 | conda env export > py36.yaml |
导入环境 | conda env create -f <file> |
克隆环境 | conda create -n <scr> --clone <dst> |
安装包 | conda install -n <envname> <package> |
指定特定版本
conda将Python也视为一个包, 因此可以安装特定版本的Python, 只需要在创建环境的时候指定版本, 例如
1 | conda create --name <envname> python=2.7 |
如果需要安装特定版本的包, 也可以使用同样的语法指定版本, 例如
1 | conda install pytorch=0.3 |
显卡信息
使用nvidia-smi
查看显卡的基本信息. 界面上同时会显示驱动版本和CUDA版本,这对于安装计算框架非常重要.
Conda安装计算框架
安装
1 | conda create -n tf # 安装默认版本的Python, 不需要新下载, 速度快 |
测试
执行如下的代码测试TensorFlow框架是否能使用GPU
1 | from tensorflow.python.client import device_lib |
执行如下代码测试PyTorch框架能否使用GPU
1 | import torch |
使用GPU
如果服务器上存在多块GPU, PyTorch默认使用第0块GPU, 如果此时第0块GPU正在运行程序, 则可以手动指定其他GPU. 例如希望在第1块GPU上运行, 则可以输入
1 | CUDA_VISIBLE_DEVICES=1 python my_script.py |
Tmux基本使用
Tmux是一个虚拟的终端, 当我们远程连接服务器时, 如果SSH进程断开, 通过此SSH启动的进程也会结束. 使用Tmux可以使相应的进程在后台运行, 并在需要的时候切换到前台.
操作 | 指令 |
---|---|
创建进程 | tmux new -s <session-name> |
连接进程 | tmux attach -t <num>/<session-name> |
断开进程 | tmux detach / Ctrl+b d |
杀死进程 | tmux kill-session -t 0 |
tmux attach
可以缩写为tmux a
- 如果不指定
<session-name>
, 则默认创建一个数字ID
Tmux绝对比nohup不知道高到哪里去了
高级操作
Tmux具有三级的层次关系, 即session:windows:panel
. Tmux实际上可以在一个session上创建多个window, 或者在一个window下创建多个panel(即分屏). 窗口基本的操作都是以前缀键Ctrl+b
开始的. 分屏操作指令如下
操作 | 指令 | 操作 | 指令 |
---|---|---|---|
水平分屏 | Ctrl+b “ | 垂直分屏 | Ctrl+b % |
切换窗格 | Ctrl+b ↑↓←→ | 调整大小 | Ctrl+b Ctrl+↑↓←→ |
关闭窗格 | Ctrl+b x | 独立窗格 | Ctrl+b ! |
显示编号 | Ctrl+b q | 全屏窗格 | Ctrl+b z |
如果能通过分屏解决问题, 则应该先考虑分屏
窗口操作指令如下
操作 | 指令 |
---|---|
Ctrl+b c - (c)reate | 生成一个新的窗口 |
Ctrl+b n - (n)ext | 移动到下一个窗口 |
Ctrl+b p - (p)revious | 移动到前一个窗口 |
参考文献
前后台切换
除了使用Tmux以外, 也可以使用Linux自带的控制指令手动切换前台和后台进程. 首先将当前进程挂起, 然后就可以输入下面的一些指令来切换
操作 | 指令 |
---|---|
将当前进程在后台挂起 | Ctrl + z |
让进程在后台运行 | <command> & |
查看后台运行的进程 | jobs |
让后台运行的进程n到前台来 | fg %n |
让进程n到后台运行 | bg %n |
杀死job | kill |
%n
为jobs命令查看到的job编号, 如果不指定则默认为当前的进程或最近的进程
参考文献
最后更新: 2024年03月28日 23:43
版权声明:本文为原创文章,转载请注明出处