初学linux,记录一下。
-
cd
、pwd
、ls
基本命令 -
bash
可直接进入`exec bash·也可 -
如何查看运行了几个程序用了多少gpu,
nvtop
,退出输入q,或者输入esc -
如何kill掉后台运行的程序,
kill -9 2044
2044是你想kill掉的程序名字 -
screen -S lnmp
创建一个名为lnmp的会话 CTRL+a+d临时离开,后台还在运行。screen -r 10042
重新挂起,exit
退出,这个语句超级好用。可以同时运行多个。 -
正在执行的程序,也就是前台进程
Ctrl + C 终止
Ctrl + D 退出
Ctrl + S 挂起
Ctrl + Q 解挂
Ctrl + Z 强制结束 -
前后台进程的切换与控制
(1)fg命令
功能:将后台中的命令调至前台继续运行
如果后台中有多个命令,可以先用jobs查看jobnun,然后用 fg %jobnum 将选中的命令调出。(2)Ctrl + z 命令
功能:将一个正在前台执行的命令放到后台,并且处于暂停状态(3)bg命令
功能:将一个在后台暂停的命令,变成在后台继续执行
如果后台中有多个命令,可以先用jobs
查看jobnum
,然后用bg %jobnum
将选中的命令调出继续 -
删除文件夹实例:
rm -rf /var/log/httpd/access
rm空格-rf空格/var/log/httpd/access
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹
千万不要加上空格 -
删除文件使用实例:
rm -f /var/log/httpd/access.log
将会强制删除/var/log/httpd/access.log这个文件 -
查看服务器显卡nvidia-smi
NVIDIA-SMI 387.26 Driver Version: 387.26 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:能耗| 显存利用率 Memory-Usage | GPU-Util 浮动GPU利用率 Compute M. |
|===============================+======================+======================|
| 0 TITAN Xp Off | 00000000:01:00.0 Off | N/A |
| 54% 84C P2 149W / 250W | 939MiB / 12188MiB | 77% Default |
+-------------------------------+----------------------+----------------------+
| 1 TITAN Xp Off | 00000000:02:00.0 Off | N/A |
| 31% 45C P8 10W / 250W | 173MiB / 12189MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 13255 C python 929MiB |
| 1 13255 C python 163MiB |
+-----------------------------------------------------------------------------+
GPU:GPU 编号;
Name:GPU 型号;
Persistence-M:持续模式的状态。持续模式虽然耗能大,但是在新的GPU应用启动时,花费的时间更少,这里显示的是off的状态;
Fan:风扇转速,从0到100%之间变动;
Temp:温度,单位是摄氏度;
Perf:性能状态,从P0到P12,P0表示最大性能,P12表示状态最小性能(即 GPU 未工作时为P0,达到最大工作限度时为P12)。
Pwr:Usage/Cap:能耗;
**Memory Usage:显存使用率;**
Bus-Id:涉及GPU总线的东西,domain:bus:device.function;
Disp.A:Display Active,表示GPU的显示是否初始化;
**Volatile GPU-Util:浮动的GPU利用率;**
Uncorr. ECC:Error Correcting Code,错误检查与纠正;
Compute M:compute mode,计算模式。
下方的 Processes 表示每个进程对 GPU 的显存使用率。
- 在终端执行程序时指定GPU
CUDA_VISIBLE_DEVICES=1 python your_file.py
这样在跑你的网络之前,告诉程序只能看到1号GPU,其他的GPU它不可见
可用的形式如下:
CUDA_VISIBLE_DEVICES=1 Only device 1 will be seen
CUDA_VISIBLE_DEVICES=0,1 Devices 0 and 1 will be visible
CUDA_VISIBLE_DEVICES="0,1" Same as above, quotation marks are optional
CUDA_VISIBLE_DEVICES=0,2,3 Devices 0, 2, 3 will be visible; device 1 is masked
CUDA_VISIBLE_DEVICES="" No GPU will be visible
- 在Python代码中指定GPU
import os
os.environ["CUDA_VISIBLE_DEVICES"] = "0"
- 设置定量的GPU使用量
config = tf.ConfigProto()
config.gpu_options.per_process_gpu_memory_fraction = 0.9 # 占用GPU90%的显存
session = tf.Session(config=config)
- 设置最小的GPU使用量,GPU动态增长
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
session = tf.Session(config=config)
- 先cd到这个文件夹然后再查看文件夹数
ls -l |grep "^-"|wc -l
- 解压tar文件先cd到文件夹中,再
tar -xvf file.tar