Skip to content

Latest commit

 

History

History
104 lines (73 loc) · 4.96 KB

File metadata and controls

104 lines (73 loc) · 4.96 KB

Tensorflow中使用GPU

查看GPU的信息

使用nvidia-smi命令查看当前机器的GPU基本信息和被占用信息。

比如下图所示,当前机器有8个GPU,其中[3, 4, 5]被占用。

Tue Mar 31 20:03:24 2020       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.67       Driver Version: 418.67       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Tesla V100-SXM2...  Off  | 00000000:8A:00.0 Off |                    0 |
| N/A   41C    P0    44W / 300W |      0MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  Tesla V100-SXM2...  Off  | 00000000:8B:00.0 Off |                    0 |
| N/A   37C    P0    45W / 300W |      0MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   2  Tesla V100-SXM2...  Off  | 00000000:8C:00.0 Off |                    0 |
| N/A   45C    P0    46W / 300W |      0MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   3  Tesla V100-SXM2...  Off  | 00000000:8D:00.0 Off |                    0 |
| N/A   50C    P0    75W / 300W |   8940MiB / 32480MiB |     49%      Default |
+-------------------------------+----------------------+----------------------+
|   4  Tesla V100-SXM2...  Off  | 00000000:B3:00.0 Off |                    0 |
| N/A   44C    P0    60W / 300W |   1008MiB / 32480MiB |     28%      Default |
+-------------------------------+----------------------+----------------------+
|   5  Tesla V100-SXM2...  Off  | 00000000:B4:00.0 Off |                    0 |
| N/A   46C    P0    92W / 300W |   1016MiB / 32480MiB |     41%      Default |
+-------------------------------+----------------------+----------------------+
|   6  Tesla V100-SXM2...  Off  | 00000000:B5:00.0 Off |                    0 |
| N/A   43C    P0    46W / 300W |      0MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   7  Tesla V100-SXM2...  Off  | 00000000:B6:00.0 Off |                    0 |
| N/A   42C    P0    44W / 300W |      0MiB / 32480MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    3    320060      C   python                                      8923MiB |
|    4    320060      C   python                                       993MiB |
|    5    320060      C   python                                      1001MiB |
+-----------------------------------------------------------------------------+

再通过命令ll /proc/pid查看pid信息。

另外,nvidia-smi -l命令可以不断自动刷新GPU信息。

动态指定空闲GPU

有两种,第一种是github上找的,另一种是自己写的。

  • github上的:gputil

  • 自己写的:见具体的代码,这里就不写了,有点长。

网上的云GPU

网上比较便宜的云gpu网站有:

MistGPU为例,介绍操作方法。

mistgpu

(1)配置gpu硬件和软件框架。在创建服务器中,选择合适的GPU机型,并选择适合的软件框架,比如是tf1.x还是tf2.x,并设置ssh远程登录密码。

(2)登录服务器。在服务器管理中,复制ssh命令,然后粘贴到本地的linux终端,输入密码就可以远程登录到服务器上。

(3)上传代码和数据。在上传数据集中,点击选择文件然后点击开始上传,就可以将数据上传到服务器的/data目录中。

(4)下载模型和数据。训练完的模型下载,使用scp命令:

scp -P 54000 [email protected]:/data/cloud/file.tar ~/Desktop/

或者在win系统上使用WinSCP软件进行下载。

注意,对于大文件,最好只是简单地打个包,不要压缩,否则下载下来会出错。打包命令:

tar -vcf xxx  # 打包
tar -vxf xxx  # 解包

(5)关闭远程服务器。

在网页端的服务器管理下点击关机即可。或者在远程服务器的~/目录下运行shutdown.sh关机命令。