首页 > 其他分享 >gpu-jupyter使用说明

gpu-jupyter使用说明

时间:2022-11-20 22:25:42浏览次数:48  
标签:nouveau jupyter nvidia sudo 说明 tensorflow gpu docker

目录

宿主机 安装 driver


# 禁用宿主机 自带 显卡 驱动

lsmod | grep nouveau
  nouveau              1949696  0
  mxm_wmi                16384  1 nouveau
  wmi                    32768  2 mxm_wmi,nouveau
  video                  49152  1 nouveau
  i2c_algo_bit           16384  1 nouveau
  ttm                   106496  2 qxl,nouveau
  drm_kms_helper        184320  4 qxl,nouveau
  drm                   491520  5 drm_kms_helper,qxl,ttm,nouveau

# 首先金庸 nouvean
vi /etc/modprobe.d/blacklist.conf

# 在最后一行添加:blacklist nouveau

modprobe_path='/etc/modprobe.d/blacklist.conf'
sed -i "s/blacklist nouveau//g" ${modprobe_path}
echo -e '\nblacklist nouveau' >>  ${modprobe_path}

sudo update-initramfs -u

# 关闭图形界面
systemctl set-default multi-user.target

reboot

lsmod | grep nouveau
# 无输出 代表成功

echo "nameserver 114.114.114.114" > /etc/resolv.conf


sudo sed -i "s@http.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
sudo sed -i "s@http.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list

apt update -y

apt install nvidia-driver-460-server -y


# 关闭图形界面
systemctl set-default multi-user.target


distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
   && curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
   && curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list


sudo apt-get update -y

sudo apt-get install -y nvidia-docker2

sudo systemctl restart docker

sudo systemctl enable docker



测试 nvidia-smi 驱动



sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://wm12hkla.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload
sudo systemctl restart docker


echo "nameserver 114.114.114.114" > /etc/resolv.conf
# 国内 加速
sudo docker run --rm --gpus all registry.cn-hangzhou.aliyuncs.com/mkmk/all:nvidia-cuda-11-base nvidia-smi

Thu Apr  8 16:52:50 2021       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.32.03    Driver Version: 460.32.03    CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  GeForce GT 730      Off  | 00000000:00:03.0 N/A |                  N/A |
| 30%   30C    P0    N/A /  N/A |      0MiB /  2002MiB |     N/A      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GT 730      Off  | 00000000:00:04.0 N/A |                  N/A |
| 30%   27C    P0    N/A /  N/A |      0MiB /  2002MiB |     N/A      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
root@free_cicd:~# 


# 关闭图形界面
systemctl set-default multi-user.target

使用 gpu-burn 测试 gpu


# 前台运行
docker run -it --gpus=all   --name gpu-jupyter1  -p  8888:8888 ${register_url}/tensorflow/tensorflow:2.4.1-gpu-jupyter 


# 删除
docker stop gpu-jupyter1  && docker rm gpu-jupyter1 


# 后台运行 , 后台 运行 需要 查看   密码
docker run -d --gpus=all   --name gpu-jupyter1  -p  8888:8888 ${register_url}/tensorflow/tensorflow:2.4.1-gpu-jupyter 

docker logs    gpu-jupyter1


ip:8888  访问即可

gub-burn 的 dockerfile


docker run -it --gpus=all   --name gpu-jupyter1  -p  8888:8888 ${register_url}/tensorflow/tensorflow:2.4.1-gpu-jupyter 


#  推送到 远程

register_url='192.168.170.100:5000'
docker tag  ${register_url}/tensorflow/tensorflow:2.4.1-gpu-jupyter  registry.cn-hangzhou.aliyuncs.com/mkmk/all:tensorflow-2.4.1-gpu-jupyter

docker push registry.cn-hangzhou.aliyuncs.com/mkmk/all:tensorflow-2.4.1-gpu-jupyter


赠送的 一些 tf 简单代码

#  测试 是否 使用的 gpu
import tensorflow as tf
tf.test.is_gpu_available(
    cuda_only=False,
    min_cuda_compute_capability=None
)
 
print("is_gpu: ", tf.test.is_gpu_available())


# 查看 所有的 可用 计算 设备
from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())


# 加法 

# cpu
%%time

with tf.device("/device:CPU:0"):
    a=tf.zeros([1000,1000])
    print("a on gpu:",a.device.endswith('GPU:0'))
    for i in range(10000):
        b=tf.add(a,a)

-->
a on gpu: False
CPU times: user 7.74 s, sys: 1.2 s, total: 8.94 s
Wall time: 3.39 s


# gpu
%%time

with tf.device("/device:GPU:0"):
    a=tf.zeros([1000,1000])
    print("a on gpu:",a.device.endswith('GPU:0'))
    for i in range(10000):
        b=tf.add(a,a)

-->
a on gpu: True
CPU times: user 900 ms, sys: 1.22 s, total: 2.12 s
Wall time: 2.12 s


讲解: 真正的 计算时间 是  是 用户态 计算时间, 7s 不是 物理时间 而是 cpu 逻辑 耗时

CPU times: user 7.74 s,  (cpu 耗时)

CPU times: user 900 ms, (GPU 耗时)



来聊聊天啊
image

标签:nouveau,jupyter,nvidia,sudo,说明,tensorflow,gpu,docker
From: https://www.cnblogs.com/ltgybyb/p/16909792.html

相关文章

  • 定义判断 序章说明
    国考10题省考5到12题根据图干给出的定义数量,可以分为单定义和多定义两者解题思路和方法一致,只不过多定义判断,一般问什么优先看什么 常见误区误区:只有把题......
  • the Jupyter Extension for VS Code
    原文:IntroducingtheJupyterExtensionforVSCode-Python(microsoft.com) JupyterNotebookenablescreatingandsharingdocumentsthatcontainlivecode,e......
  • 为仿真器添加eCos多线程调试支持,GDBServer Extender 0.0.1 使用说明
    可以使用RedBoot或者仿真器调试eCos系统,RedBoot集成的GDBStubs已经支持eCos的多线程调试,使用GDB命令infothreads就可以读取当前的线程状态。但是使用仿真器时,由于仿真器不......
  • CKS v1.25 更新说明
    亲爱的同学,您好,我们已更新了CKS最新版本v1.25的资料,其中更新了2道新题,请及时联系工程师老师或者客服,更新资料和模拟环境。 请务必按照如下方式更新环境,否则将......
  • c 二进制,8进制,16进制表示数值说明
     一个数字默认就是十进制的,表示一个十进制数字不需要任何特殊的格式。但是,表示一个二进制、八进制或者十六进制数字就不一样了,为了和十进制数字区分开来,必须采用某种特殊......
  • 深度学习装机指南:从GPU到显示器,全套硬件推荐
    ✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。......
  • MacBook苹果笔记本电脑 如何查询CPU GPU 温度?
     苹果笔记本电脑高负荷下发热量巨大,为了散热买了个散热器,于是乎,如何观察散热效果?方法如下:1、打开苹果内置终端,输入命令:sudopowermetrics--samplerssmc|grept......
  • spring boot 应用 systemd 管理简单说明
    基于systemd的springboot应用管理有一个比较方便的能力,就是不用复杂的java进程处理了,应用发布只需要进行jar文件的copy处理,然后就是服务的重启了systemctlrestart......
  • 101:面向对象的三大特征说明(封装、继承、多态)
    ###面向对象三大特征介绍Python是面向对象的语言,也支持面向对象编程的三大特性:继承、封装(隐藏)、多态。###封装(隐藏)   隐藏对象的属性和实现细节,只对外提供必要的......
  • 工作流设计器使用说明
    一、           工作流设计器介绍1.     流程设计流程处理自定义,如图:使用说明:l 新建流程程序进入时状态为新建流程(或点击菜单“模型”-“新建”或点击快......