pytorch算力与有效性分析

pytorch

  • Windows中安装深度学习环境
    • 参考文档
    • 机器环境说明
      • 3080机器 Windows11
        • qt_env 满足遥感CS软件分割、目标检测、变化检测的需要
        • gtrs 主要是为了满足遥感监测管理平台(BS)系统使用的,无深度学习环境内容
        • swin_env 与 qt_env 基本一致
        • od 用于慧眼守土目标检测服务的,与qt_env基本一致,比其高0.0.1
      • 1080机器
      • 3060机器
    • 算力分析
    • 查看CUDA信息
    • CUDA/CUDA toolkit(pytorch)等区别和关系
    • Nvidia的CUDA和CUDNN下载地址
    • Nvidia的CUDA和CUDNN的安装及检测方法
    • 环境安装
    • 测试环境的准确性代码
  • stanet
  • Linux环境中安装深度学习环境
    • Linux 基础回顾
    • 有三种方法助你走进Ubuntu新世界。
    • 切换输入法
    • Ubuntu 下安装深度学习环境
      • 整体
      • CUDA 10.2
    • xmanager 连不上 是因为网络服务ssh没有开通
    • 在linux桌面上创建程序执行的图标
    • linux 运行SVN
    • 测试GPU是否可以用?
    • 启动深度学习模型训练
  • 特定的网络
    • STANET
      • visdom安装与可视化
  • Pytorch 知识点
    • BCWH
    • pytorch中文帮助文档
    • visdom安装与基本用法
    • pip install 安装包
    • conda 常用命令
      • 克隆/复制虚拟环境:想在之前环境基础上再填点其他东西,但有时候会发生一些情况改变以前的环境,建议再创建一个新的环境或者直接clone一份之前的环境(推荐)。
      • 虚拟环境删除
  • 添加清华镜像源
  • 搜索时显示地址
    • 虚拟环境拷贝后提示有致命错误
    • 常见报错
      • “OSError: [WinError 1455]页面文件太小,无法完成操作。”
    • mklink
  • 重要的参考库和URL

Windows中安装深度学习环境

参考文档

Windows端pytorch镜像快速安装
https://blog.csdn.net/Thebest_jack/article/details/123455215?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167150520516800215058539%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=167150520516800215058539&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~hot_rank-9-123455215-null-null.142v68pc_rank_34_queryrelevant25,201v4add_ask,213v2t3_control2&utm_term=windows%203080%20%20pytorch%20&spm=1018.2226.3001.4187

机器环境说明

3080机器 Windows11

CUDA cuda_11.1.0_456.43_win10
CUDNN cudnn-11.1-windows-x64-v8.0.5.39
Python3.9

多个虚拟环境

qt_env 满足遥感CS软件分割、目标检测、变化检测的需要
组件名称 组件版本信息 其他说明
torch 1.8.0+CU111 因为需要满足stanet的代码运行要求,所以不能超过1.8.0
torchvision 0.9.0+CU111
visdim 0.2.3
GDAL 3…1.4
gtrs 主要是为了满足遥感监测管理平台(BS)系统使用的,无深度学习环境内容
swin_env 与 qt_env 基本一致

在swin_env 的基础上安装mmcv
https://download.openmmlab.com/mmcv/dist/cu111/torch1.8.0/index.html
./mmcv_full-1.6.1-cp39-cp39-win_amd64.whl

od 用于慧眼守土目标检测服务的,与qt_env基本一致,比其高0.0.1

1080机器

3060机器

算力分析

RTX 3080 12 GB显卡发布:8960个CUDA。
NVIDIA GeForce RTX 3080 with CUDA capability sm_86 is not compatible with the current PyTorch installation.
pytorch算力与有效性分析_第1张图片
NVIDIA GeForce RTX 3080 Ti with CUDA capability sm_86意思是RTX 3080 Ti的算力是8.6,而当前安装好的pytorch最高只支持到7.5算力的显卡,也就是说显卡算力和pytorch版本不匹配。要测试显卡算力与当前pytorch是否匹配,可以进入python命令行,依次输入如下两行代码:

import torch
torch.zeros(1).cuda()

————————————————
版权声明:本文为CSDN博主「zeeq_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_44120025/article/details/121747212

查看CUDA信息

NVIDIA-smi
pytorch算力与有效性分析_第2张图片
这个方法不对,这里的11.6 指的是可驱动的最高版本,下载CUDA的版本应低于11.6。

正确的方法应该是:
nvcc -V
pytorch算力与有效性分析_第3张图片
前者可以查看到信息,而后者查看不到的原因是?
https://blog.csdn.net/baidu_30506559/article/details/121908428?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-121908428-blog-125822005.pc_relevant_3mothn_strategy_recovery&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-121908428-blog-125822005.pc_relevant_3mothn_strategy_recovery&utm_relevant_index=2

CUDA/CUDA toolkit(pytorch)等区别和关系

一、CUDA/cudnn/CUDA Toolkit/NVCC区别简介
参考 Pytorch 使用不同版本的 cuda

CUDA:为“GPU通用计算”构建的运算平台。
cudnn:为深度学习计算设计的软件库。
CUDA Toolkit (nvidia): CUDA完整的工具安装包,其中提供了 Nvidia 驱动程序、开发 CUDA 程序相关的开发工具包等可供安装的选项。包括 CUDA 程序的编译器、IDE、调试器等,CUDA 程序所对应的各式库文件以及它们的头文件。
CUDA Toolkit (Pytorch): CUDA不完整的工具安装包,其主要包含在使用 CUDA 相关的功能时所依赖的动态链接库。不会安装驱动程序。
(NVCC 是CUDA的编译器,只是 CUDA Toolkit 中的一部分)
注:CUDA Toolkit 完整和不完整的区别:在安装了CUDA Toolkit (Pytorch)后,只要系统上存在与当前的 cudatoolkit 所兼容的 Nvidia 驱动,则已经编译好的 CUDA 相关的程序就可以直接运行,不需要重新进行编译过程。如需要为 Pytorch 框架添加 CUDA 相关的拓展时(Custom C++ and CUDA Extensions),需要对编写的 CUDA 相关的程序进行编译等操作,则需安装完整的 Nvidia 官方提供的 CUDA Toolkit。
————————————————
版权声明:本文为CSDN博主「健0000」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41094058/article/details/116207333

Nvidia的CUDA和CUDNN下载地址

  • CUDNN 下载:https://developer.nvidia.com/rdp/cudnn-archive#a-collapse805-111
  • CUDA历史版本下载:https://developer.nvidia.com/cuda-toolkit-archive

Nvidia的CUDA和CUDNN的安装及检测方法

https://blog.csdn.net/yang4123/article/details/127188279

环境安装

第一步:历史的版本,在这边:https://pytorch.org/get-started/previous-versions/
第二步:找到对应的语句:
pip3 install torch1.8.1+cu111 torchvision0.9.1+cu111 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html
RTX3080需要用到CUDA11.1
第三步:然后去到网址下手工下载下来,然后pip手动安装;

测试环境的准确性代码

import torch
import time
import torchvision
torch.zeros(1).cuda()
# RTX 3080的算力是8.6,但是当前的PyTorch依赖的CUDA版本支持的算力只有3.7、5.0、6.0、6.1、7.0、7.5及3.7以下


# 测试gpu计算耗时
A = torch.ones(5000, 5000).to('cuda')
B = torch.ones(5000, 5000).to('cuda')
startTime2 = time.time()
for i in range(100):
    C = torch.matmul(A, B)
endTime2 = time.time()
print('gpu计算总时长:', round((endTime2 - startTime2) * 1000, 2), 'ms')

# 测试cpu计算耗时
A = torch.ones(5000, 5000)
B = torch.ones(5000, 5000)
startTime1 = time.time()
for i in range(100):
    C = torch.matmul(A, B)
endTime1 = time.time()
print('cpu计算总时长:', round((endTime1 - startTime1) * 1000, 2), 'ms')

print("test")

stanet

stanet 环境不能超pytorch1.8版本 CUDA 10.2 pythorch 1.8 torchversion 0.9 torchaudio 0.8
stanet报错 RuntimeError: The size of tensor a (64) must match the size of tensor b (3) at non-singleton dimension 1 图片格式的问题,必须是png
从这边去作查询:https://download.pytorch.org/whl/torch_stable.html
conda install pytorch1.8.1 torchvision0.9.1 torchaudio==0.8.1 cudatoolkit=11.3 -c pytorch -c conda-forge
运行 STANET
Gevent 是一个协作式多任务库。它的工作方式是您,程序员,将您的代码组织成称为 greenlets 的工作单元。当给定的 greenlet 正在运行时,它会单独运行。当它到达一个会阻塞的点时,也就是说,它必须等待一些外部信号,如文件、超时、我们的网络数据,greenlet 应该通过向 gevent 发送信号来进行合作,gevent 会安排其他一些 greenlet 运行。
————————————————
版权声明:本文为CSDN博主「不瘦8斤的妥球球饼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43570470/article/details/124985575
@pytorch_wrap
image_numpy.transpose
Collection.OrderedDict
assert
修改可视化版本visdom=0.1.8.8;
scipy=1.1.0:因为1.2.0版本的scipy没有 imread,也会报错。
pip install scipy -i https://pypi.douban.com/simple/
visdom

Linux环境中安装深度学习环境

Linux 基础回顾

1.Linux的特点:免费,开源,高性能;
2.1999年RedHat得到IBM的合作,意味着大公司承认他了;之后Oracle,sun 等大公司都支持
3.为了节约成本,会有大量的window程序迁移到Linux。
4.Linux最小需要4M,而win98 64M,XP128M
5.学东西很多东西可以看一看,但是不能什么都研,有一门就可以了。
第十讲:
1.网络邻居可以解决两个win操作系统的网络文件共享;而 win和Linux两台机器的文件共享 怎么办 ,通过Samba服务安装后,使得linux文件可以共享
2.什么是shell 所有命令都会被系统重新解析成linux内核可以识别的工具,就是shell 用户输入命令只是shell使用的一个方面 里面还有代码开发,使用shell编程相当于dos的批处理文件 。在一个linux 中装了几种shell

大陆一般用的是 /bin/sh 欧洲常用 /bin/ksh
如何修改shell
a 查看目前使用的是哪种shell env (该命令用于查看环境变量 ) 用于查看明确操作系统的情况呢
b 修改 使用的 shell chsh -s /bin/csh
3.命令补全功能 :非常有用,

Linux挂载
1.首先将window 文件制作成为 iso文件 ;
2.挂载iso 文件;
3.启动Linux系统;
4. 在Root用户下,运行: mount -o loop /dev/cdrom /mnt
之后ls /mnt

6.安装tgz文件,tar -zxvf 文件名

有三种方法助你走进Ubuntu新世界。

虚拟机安装 原料:Ubuntu Kylin的ISO、VMware或VirtualBox 优点:一条龙服务,安全简单 缺点:用户体验差,隔靴搔痒
Wubi安装 原料:Ubuntu Kylin的ISO、wubi.exe 优点:即点即用,默认Windows开机引导 缺点:易死机,待机和网络易出问题
U盘安装 原料:Ubuntu Kylin的ISO、UltraISO、EasyBCD、U盘(>=2G) 优点:简单安全,正牌双系统 缺点:默认Ubuntu开机引导;

http://www.manongjc.com/detail/51-eaztavmgwijzwka.html

切换输入法

Ubuntu中切换中/英文输入法是:win键+空格键
安装输出法
https://blog.csdn.net/weiguang102/article/details/122522271
全局变量的设置方法
https://blog.csdn.net/weixin_42306148/article/details/122149712
sudo gedit ~/.bashrc
export PATH=“/home/name/anaconda3/bin:$PATH”

Ubuntu 下安装深度学习环境

整体

CSDN 上高查看率的文档:https://blog.csdn.net/wuzhiwuweisun/article/details/82753403?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522166608764016782391841005%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=166608764016782391841005&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v1~hot_rank-1-82753403-null-null.142v58control_1,201v3control&utm_term=ubuntu18.04%20%20gtx1080ti%20pytorch&spm=1018.2226.3001.4187
python3.8:
下图发现Ubuntu18.04自带Python3.6与2.7版本。要再安装一个3.8的版本 参考https://blog.csdn.net/m0_55986434/article/details/123410860 可以切换优先级 数字越大优先级越高;
anaconda
主要参考了:https://blog.csdn.net/KIK9973/article/details/118772450 使用的版本是2021-5的,不要用太老的, 此外是从清华的源上面下载的https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
安装的地质:gtis/home/anaconda3下,安装的过程实际上是解压包的过程;
需要添加环境变量
https://www.csdn.net/tags/Mtjagg2sMjA4ODQtYmxvZwO0O0OO0O0O.html
显卡驱动470 11.4 这个实际是无效的,要用nvcc -V来查看实际的cuda的版本信息;
自动走系统更新的;
CUDA10.2
主要参考:https://blog.csdn.net/hongyiWeng/article/details/121233439,采用的安装方式是wget;
会出现s段错误的问题
https://blog.csdn.net/weixin_54787250/article/details/125648992
每次到99%的时候就自动报错了,这是一个非常尴尬的事情;
https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
安装的时候需要把dirver给去除掉,不然会报错的; https://blog.csdn.net/hongyiWeng/article/details/121233439
cudnn 8.2.2
主要参考:https://blog.csdn.net/mao_hui_fei/article/details/121140152
注册的用户名和密码 [email protected] zxxGtis@123
安装deb的方法
https://javaforall.cn/143820.html

pytorch 的相关安装
https://pytorch.org/get-started/previous-versions/

CUDA 10.2

conda install pytorch1.12.0 torchvision0.13.0 torchaudio==0.12.0 cudatoolkit=10.2 -c pytorch
系统:Ubuntu18.04 桌面版
显卡:GTX1080 Ti

这个方案太高了;
pytorch 直接在线安装会下载高版本的,用不了,需要用低版本的;

pip install torch1.8.1+cu111 torchvision0.9.1+cu111 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html

xmanager 连不上 是因为网络服务ssh没有开通

Failed to start sshd.service: Unit sshd.service not found.
https://blog.csdn.net/TanCairo/article/details/104363915
主要是因为防火墙没有关闭

在linux桌面上创建程序执行的图标

https://blog.csdn.net/hgq522/article/details/121326710?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-121326710-blog-126240505.pc_relevant_3mothn_strategy_and_data_recovery&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-121326710-blog-126240505.pc_relevant_3mothn_strategy_and_data_recovery&utm_relevant_index=1

linux 运行SVN

https://blog.csdn.net/sinolover/article/details/121244587
svn checkout https://218.94.2.162:6001/svn/jsfzzx/技术发展中心科研组/63-GeoAI2022/02GeoAI_Sub_Projects/Model_Baseline
zxx
zhouxinxin
gtis

测试GPU是否可以用?

https://jamesbobo.blog.csdn.net/article/details/103116903?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-103116903-blog-122089421.pc_relevant_multi_platform_whitelistv3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-1-103116903-blog-122089421.pc_relevant_multi_platform_whitelistv3&utm_relevant_index=2
代码已经写了,位置在:
/home/gtis/002project/001linux_learn/test_cuda.py

启动深度学习模型训练

会出现电脑自动重启的情况,此时需要设置降低GPU 的功率
https://blog.csdn.net/weixin_43587572/article/details/116201354

特定的网络

STANET

visdom安装与可视化

https://blog.csdn.net/weixin_44751294/article/details/115329162

Pytorch 知识点

BCWH

[batch_size,channels,width,hight]

pytorch中文帮助文档

https://pytorch-cn.readthedocs.io/zh/latest/package_references/functional/#distance-functions

visdom安装与基本用法

https://blog.csdn.net/weixin_44751294/article/details/115329162
python -m visdom.server
http://localhost:8097

pip install 安装包

pip install -U scikit-learn -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
pip install scipy -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

conda 常用命令

克隆/复制虚拟环境:想在之前环境基础上再填点其他东西,但有时候会发生一些情况改变以前的环境,建议再创建一个新的环境或者直接clone一份之前的环境(推荐)。

conda create -n new_env --clone exist_env
new_env 是自己新创建的虚拟环境名称
exist_env 是被复制的已经存在的环境名称
一定要看清楚,new_env 在克隆之前 是不存在的。 exist_env虚拟环境在克隆之前是存在的。
————————————————
版权声明:本文为CSDN博主「Vertira」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Vertira/article/details/128089206

虚拟环境删除

conda remove -n 虚拟环境名称 --all

查看源信息
conda config --show-sources

恢复源的出厂设置
conda config --remove-key channels

添加新的源地址

添加清华镜像源

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

搜索时显示地址

conda config --set show_channel_urls yes

设置源ssl验证为false
conda config --set ssl_verify false

创建指定python版本的虚拟环境
conda create -n orclconn34 python=3.4

1.问题描述
window10环境下,使用Anaconda安装相关依赖包时,报错:Caused by SSLError("Can’t connect to HTTPS URL because the SSL module is not available)
2.解决办法
原因是anaconda没有安装好,环境变量没有配置成功,需要添加三条环境变量;
E:\anaconda;
E:\anaconda\Scripts;
E:\anaconda\Library\bin

虚拟环境拷贝后提示有致命错误

https://blog.csdn.net/PSpiritV/article/details/122993602?ydreferer=aHR0cHM6Ly93d3cuYmFpZHUuY29tL2xpbms%2FdXJsPWhvb0FhNW1UQTRKd3NpbGw2ZDRTTXA5ckdtLWFIVjBvT2d4VGVhU2dJeVB1eERucTZSRnd1WksxX0ZNVW83a1R5ODJUZUhTeXNQeFpwZ1doXzh3anh5OV9CSWszRElMaXNnWlVFZHNjdFVlJndkPSZlcWlkPWI2NGY1ZWY3MDAwOTJkYmEwMDAwMDAwNDY0MmFhNDBm
在新地址中激活虚拟环境,然后使用命令【python -m pip install --upgrade --force-reinstall pip】

常见报错

“OSError: [WinError 1455]页面文件太小,无法完成操作。”

https://blog.csdn.net/weixin_46133643/article/details/125042903

mklink

link(生成的文件夹链接) target(原来的文件夹)
mklink /J “D:\test1” “E:\test1”
mklink /J “E:\002code_running\01GeoAI_Main_Project\01Code\universal_platform\ai_detection\model” “E:\003AI_models\地理智能引擎2.0模型\model”

重要的参考库和URL

  • 影像变化检测awesome: https://github.com/wenhwu/awesome-remote-sensing-change-detection
  • 影像分割awesome: https://github.com/Tramac/awesome-semantic-segmentation-pytorch 这个代码值得一试;
  • 影像分割:https://gitee.com/chinawindofmay/awesome-semantic-segmentation#datasets
  • 商汤MMSegmentation:https://github.com/open-mmlab/mmsegmentation
  • 百度paddle rs: https://github.com/PaddlePaddle/PaddleRS
  • 百度paddle seg:https://github.com/PaddlePaddle/PaddleSeg
  • 遥感的各种数据集
    https://github.com/PaddleCV-SIG/PaddleRS/blob/develop/docs/data/dataset_summary.md
  • 变化检测数据集
    主要资源可以从sigma网站获取;http://sigma.whu.edu.cn/resource.php
    https://zhuanlan.zhihu.com/p/391557545?ivk_sa=1024320u
  • 传统变化检测方法 https://github.com/abhijeet3922/Change-Detection-in-Satellite-Imagery
  • 变化检测高分值网站:https://github.com/dgtlmoon/changedetection.io
  • swintransformer的微软项目地址:https://github.com/microsoft/Swin-Transformer
  • imagenet数据集的地址: http://image-net.org/
  • mini imagenet数据集下载地址:https://lyy.mpi-inf.mpg.de/mtl/download/Lmzjm9tX.html

你可能感兴趣的:(pytorch,人工智能,python)