YOLO项目服务器配置及云硬盘挂载问题

2023-10-27

资源包配置

首先便是conda虚拟环境创建了,这里我们便不一一赘述了,大家可以参考博主先前的文章。

然后就是pytorch的安装了,这里可以使用conda命令或者是pip命令
首先是conda命令,博主在第一个服务器时的安装方式就是这个,很正常,但到第二次安装时却总是出错

conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.3 -c pytorch

报错:CondaError: Downloaded bytes did not match Content-Length。

网上的解决方法是添加清华源的镜像,但我的已经是清华源镜像了,所以解决方法是把timeout放大,600还是不行,把时间延长到1000.0就成功安装了。命令如下:

conda config --set remote_read_timeout_secs 1000.0

但博主改了好几次,甚至一度将时间设置为6000,但还是失败了,无奈使用了pip的安装方式。这次就按照成功了。

pip install torch==1.12.0+cu113 torchvision==0.13.0+cu113 torchaudio==0.12.0 --extra-index-url https://download.pytorch.org/whl/cu113

所需其他资源包及安装命令:

sudo apt-get install python3-matplotlib
pip install scipy
pip install tqdm
pip install opencv-python

环境部署:

在这里插入图片描述

依次执行就可以,本次博主又换了一个服务器,这次在安装过程中遇到了一些问题,最终也解决了,实验数据集换成了CADCD,输入尺寸为1280x1024,很明显此时的显存占用要比640x640的大了很多,下面是本次GPU使用情况:batch-size为16,迭代次数为200次。

在这里插入图片描述
然而还没高兴太久就出问题了:

CUDA out of memory. Tried to allocate 2.50 GiB (GPU 0; 15.75 GiB total
capacity; 5.88 GiB already allocated; 479.62 MiB free; 14.15 GiB
reserved in total by PyTorch) If reserved memory is >> allocated
memory try setting max_split_size_mb to avoid fragmentation. See
documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

由于计算累计最终爆显存了,代码中已经使用了torch.no_grad(),但没有用,那么就只能修改批次大小或者是图片大小了,最终把批次大小降为12。
在开始时占用只有11G,但随着训练继续,达到了15G。

在这里插入图片描述

这次应该不会有问题了吧,保佑!

云硬盘挂载问题

在使用这个服务器的过程中意识到每次更换服务器需要重新上传项目和数据集,这让人很苦恼,因此可以采用加装一个云硬盘的方式,这样就不需如此频繁更换了,然而也是刚刚意识到该问题,博主的GPU服务器是硅谷二区的,但并未找到可用区的硬盘,呜呜呜

以下是博主咨询腾讯云客服时给的回复,即云硬盘不支持跨区挂载,也不支持跨账户挂载。

在这里插入图片描述

根据这个要求那么我们在购买云硬盘时一定要注意使用与服务器相同地区的云硬盘。这里我们点击自己购买的云硬盘选择自己的服务器后即可完成挂载。一台服务器可以挂载多个云硬盘,一个云硬盘只能给一台服务器使用。
在这里插入图片描述

挂载完成后,我们还需要对服务器进行初始化

根据实际使用场景选择初始化方式:

  • 若整块硬盘只呈现为一个独立的分区(即不存在多个逻辑盘,如 vdb1 和 vdb2 ),强烈推荐不使用分区,直接在裸设备上构建文件系统。
  • 若整块硬盘需要呈现为多个逻辑分区(即存在多个逻辑盘),则您需要先进行分区操作,再 在分区上构建文件系统。

首先需要切换到root用户:
1、执行【sudo passwd root】命令;
2、设置root用户的密码;
3、执行【su root】命令,这样就可以自由地切换到root用户了
在这里插入图片描述

以 root 用户执行以下命令,查看磁盘名称

fdisk -l

回显信息类似如下图,表示当前的云服务器有两块磁盘,“/dev/vda” 是系统盘,“/dev/vdb” 是新增数据盘。

在这里插入图片描述
执行以下命令,对 “/dev/vdb” 裸设备直接创建文件系统格式。
命令格式:

mkfs -t <文件系统格式> /dev/vdb

我们可以看下自己的文件系统格式:

df -T

在这里插入图片描述

不同文件系统支持的分区大小不同,需要根据实际需求合理选择文件系统。可以看到我们的时EXT4类型,我们便以设置文件系统为 EXT4 为例。

mkfs -t ext4 /dev/vdb

在这里插入图片描述
执行以下命令,新建挂载点。

mkdir <挂载点>

我们以新建挂载点 /data 为例:

mkdir /data

执行以下命令,将新建分区挂载至新建的挂载点。

mount /dev/vdb <挂载点>

以新建挂载点 /data 为例:

mount /dev/vdb /data

执行以下命令,查看挂载结果。

df -TH

在这里插入图片描述
如此我们的云硬盘便挂载成功了。
随后我们只需要将自己的项目直接上传到这个文件夹中便可以了。
当然这里需要注意一个问题我们在使用该云盘上传文件时要么你需要使用root用户登录,要么就将当前的data文件所有者改为我们常用的用户,并退出root用户状态,否则会无法上传。

在这里插入图片描述

修改所属用户:

chown ubuntu data

随后在使用过程中博主看到自己的云硬盘一直空间占用一直没有变化,便很是奇怪,后来才发现博主一直使用的是home/ubuntu/data,将这个data文件当作自己挂载云盘时创建的文件夹了,而博主真正的云硬盘的data文件为/data随后使用cp命令将文件迁移到了云硬盘中便正常了。

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

YOLO项目服务器配置及云硬盘挂载问题 的相关文章

随机推荐

  • scala.collection.map 和 scala.collection.mutable.map有什么区别

    一 类型 1 Map 映射 是一种可迭代的键值对 key value 结构 2 所有的值都可以通过键 key 来获取 3 Map 中的键都是唯一的 Map 也叫哈希表 Hash tables 二 两种类型 scala collection
  • 将Kali Linux2020.3设置为中文汉化

    打开虚拟机后进入终端输入 vim etc apt sources list 更新源文件 个人建议 使用中科大 在文件内容末尾添加 中科大 deb http mirrors ustc edu cn kali kali rolling main
  • synchronized同步关键字三种写法和开发中如何解决线程安全问题

    文章目录 前言 一 同步代码块 二 在实例方法上使用synchronized 三 在静态方法上使用synchronized 总结 开发中如何解决线程安全问题 第一种方案 第二种方案 第三种方案 前言 为了保证线程安全 我们可以采用synch
  • JavaScript试题总结

    1 我们可以在下列哪个HTML元素中放置JavaScript代码 A A
  • C++基础知识 - 函数模板的概念

    数模板语法 所谓函数模板 实际上是建立一个通用函数 其函数类型和形参类型不具体指定 用一个虚拟的类型来代表 这个通用函数就称为函数模板 所有函数体相同的函数都可以用这个模板来代替 不必定义多个函数 只需在模板中定义一次即可 在调用函数时系统
  • RabbitMQ常见问题

    一 RabbitMQ如何保证消息不丢失 这是面试时最喜欢问的问题 其实这是个所有MQ的一个共性的问题 大致的解 决思路也是差不多的 但是针对不同的MQ产品会有不同的解决方案 而RabbitMQ 设计之处就是针对企业内部系统之间进行调用设计的
  • 合肥未来计算机技术,重磅!连夜宣布!中国首个量子计算机操作系统在合肥发布!...

    2月8日晚8点 位于合肥的本源量子举行线上发布会 发布首款国产量子计算机操作系统 本源司南 该系统实现量子资源系统化管理 量子计算任务并行化执行 量子芯片自动化校准等全新功能 助力量子计算机高效稳定运行 相对于传统计算机 一台强大的量子计算
  • Hum Brain Mapp:用于功能连接体指纹识别和认知状态解码的高精度机器学习技术

    摘要 人脑是一个复杂的网络 由功能和解剖上相互连接的脑区组成 越来越多的研究表明 对脑网络的实证估计可能有助于发现疾病和认知状态的生物标志物 然而 实现这一目标的先决条件是脑网络还必须是个体的可靠标记 在这里 本研究利用人类连接组项目数据
  • apt和aptitude_如何使用Apt,Apt-Get,Aptitude命令列出可用的更新和可更新软件包?...

    apt和aptitude apt and apt get provides online package update for the deb based distributions We can list currently availa
  • iOS开发-ScrollView图片缩放

    智能手机一般常用常用的操作触摸 滑动 缩放 感觉对于生活而言就是手机在手 天下我有 看网页的时候字体太小 缩放一下 看美女的看的不爽 缩放一下 地图看的不清 缩放一下 缩放是一个很常见的操作 不论是从生活还是写程序而言 都是一个绕不开的东西
  • 数字IC手撕代码-乐鑫科技笔试真题(4倍频)

    前言 本专栏旨在记录高频笔面试手撕代码题 以备数字前端秋招 本专栏所有文章提供原理分析 代码及波形 所有代码均经过本人验证 目录如下 1 数字IC手撕代码 分频器 任意偶数分频 2 数字IC手撕代码 分频器 任意奇数分频 3 数字IC手撕代
  • idea报错:fatal: –author ‘user@mail.com’ is not ‘Name ’ and matches no existing author

    需求阐述 在本地项目上传到gitlab时 到了Commit Directory这一步 控制台报错 fatal author user mail com is not Name and matches no existing author 解
  • 代码:如何在 C# 中实现将大型 Excel 文件导出为 CSV ?

    在本主题中 我们将介绍如何在 C 中将大型 Excel 文件导出为CSV的问题 下面给出的在 C 应用程序中以编程方式将 Excel 文件转换为 CSV 格式的步骤以及简单易行的代码将为您提供所需的解决方案 开发人员在处理像XLSX或XLS
  • Python request-html cv2获取网络图片【canvas base64图片】

    测试网站 http www porters vip captcha clicks html import cv2 import base64 import numpy as np import nest asyncio nest async
  • 电子设计大赛需要具备的知识

    具体的说 有 一 基础知识1 电路原理2 数字电路3 模拟电路 重点 4 元器件的简介二 软件方面 总体编程能力 1 单片机基础与编程 重点 单片机内部结构与工作原理 单片机接口电路 单片机程序设计 单片机开发系统 51系列或AVR单片机
  • 【转】Stephen Wolfram写的乔布斯的回忆录

    无意间在微博上看到Stephen Wolfram也写了回忆Jobs的博客 感觉这个人的名字是相当熟悉 后来看到Mathematica这个软件的名字时就感到非常亲切了 这款软件是以前用过的一款非常强大的数学工具软件 可以解决公式计算 解方程组
  • 产品命名规则(自用)

    产品命名规则 自用 产品id命名规则 共8 型号 3 relay类型 1 计量计类型 1 最大值 1 阶段 1 注 型号 根据产品形态定义 如smartplus 可以定义成sp1 sp是smartplus缩写 1是序号 如果有相同类型 sp
  • 在STM32上创建一个自己的操作系统

    参考文章 http www cnblogs com ansersion p 4328800 html 上面是我的微信和QQ群 欢迎新朋友的加入 之前看了蛮多帖子 不过苦于自己对着基本上是门外汉 基本上只明白个大概 幸亏找到一个分享源码的帖子
  • 阅读resyschina推荐引擎文章感受一

    1 推荐目的在于帮助用户做决策 买到更合适的东西 而促销的目的在于销售商品 2 推荐帮助用户找到感兴趣但是没有想到的东西serendipity 惊喜 3 首页上位置对系统的结果有重大影响 4 推荐系统和搜索的区别在于 推荐系统不需要用户进行
  • YOLO项目服务器配置及云硬盘挂载问题

    资源包配置 首先便是conda虚拟环境创建了 这里我们便不一一赘述了 大家可以参考博主先前的文章 然后就是pytorch的安装了 这里可以使用conda命令或者是pip命令 首先是conda命令 博主在第一个服务器时的安装方式就是这个 很正