GPU显存占满但利用率却很低

news2024/11/25 4:57:50

来帕多瓦联培已经一个多月了,最近调代码跑实验又发现了这个问题。这里提供另外一个解决思路。一个原因还是 cpu没跟上gpu节奏

通常我们都会用尽可能大的 batch 来占满显存。但是如果cpu的读取和传输跟不上的话就会导致gpu利用率时上时下,而且训练时间还会变长。

这里可以尝试减小batch,以减轻cpu工作负担,增加gpu利用率,同时还能加速训练。 举个例子。

训练 基于resnet101+deeplabv3的语义分割模型:
1. batch size为4:总训练时间一小时;
2. batch size为2:总训练时间半小时;

下图为batch size=4时的设备状态。
可以看到gpu中间是有很多次休息的。
在这里插入图片描述
同时训练时间也要一个多小时。
在这里插入图片描述

下图为batch size=2时的设备状态。
可以看到,仅仅降低了batch size,就把gpu利用率拉满了。
在这里插入图片描述
同时训练时间也缩短了不少。

在这里插入图片描述
最后小batch的问题可以通过累积几个batch梯度再优化来解决。

总结

说到底还是不够有钱,这样也好,多出来的内存还能再让我跑跑别的程序!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/28024.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2022.3IDEA配置grep console

首先安装Grep Console (这个大家都会吧) 安装之后 打开File 选项的Setting→Other Settings→Grep Console 3. 打开之后默认的样式是下图(我做了一下标识) whole line:是否一整行都是这个样式。用于区分一个关键字和一行字case insensitive: 不勾选就行…

spring cache (ehcache方式)

目录前置pom: jar配置文件:ehcache.xmlapplication.ymlMyEhCacheCacheConfiguration.java效果图禁用 MyEhCacheCacheConfiguration.java启用 MyEhCacheCacheConfiguration.java前置 会演示springcache的使用方式 项目地址: https://gitee.com/xmaxm/test-code/blob/master/cha…

第五章 神经网络(上)

5.1 神经元模型 神经网络目前使用的最广泛的定义为“神经网络是由具有适应性的简单单元组成的广泛并行互联的网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。神经网络中最基本的成分是神经元模型,即上述定义的简单单元。 在生物神经…

离线安装Redis集群(redis-6.2.4)

记录:326 场景:在CentOS 7.9操作系统上,使用redis-6.2.4版本,在三台机器上,离线安装Redis集群。 版本: 操作系统:CentOS 7.9 Redis版本:redis-6.2.4 1.主机规划 目标&#xff…

物联网僵尸网络再次发起大规模攻击事件回顾

执行摘要 随着物联网的不断发展,物联网安全也被越来越多的人所关注。我们于 2016 年发布《物联网安全 白皮书》,进行物联网安全的科普介绍;于 2017 年发布《2017 物联网安全年报》,关注物联网资产 在互联网上的暴露情况、物联网设…

预训练模型相对位置编码和绝对位置编码的通俗理解

1 transformer最经典的理解: http://jalammar.github.io/illustrated-transformer/ 2 位置编码 相对位置编码(relative position representation):https://zhuanlan.zhihu.com/p/397269153 Transformer中的相对位置编码(Relative Position Embedding)…

基于物联网的花卉养殖监控设计系统与研究

目 录 1、绪论 1 1.1课题背景 1 1.2 本课题研究意义 2 2、 系统总体方案设计 3 2.1、传感器部分 3 2.2、主控制部分 4 3、系统硬件设计 6 3.1 STC89C52RC单片机主控模块设计 6 3.2单片机最小系统 9 3.2.1时钟电路 9 3.2.2复位电路 10 3.2.3 STC89C52RC中断技术概述 10 3.3 温度…

基于最小误差阈值法的特定医学图像分割算法研究-含Matlab代码

⭕⭕ 目 录 ⭕⭕✳️ 一、引言✳️ 二、阈值分割原理✳️ 三、最小误差阈值法✳️ 四、基于最小误差阈值法图像分割的实验分析✳️ 4.1 图像分割结果✳️ 4.2 边缘曲线提取结果✳️ 五、参考文献✳️ 六、Matlab代码获取✳️ 一、引言 图像是人们所熟悉的,但是图像…

服务器稳定性测试-LTP压力测试方法及工具下载

简介 LTP(LinuxTest Project)是SGI、IBM、OSDL和Bull合作的项目,目的是为开源社区提供一个测试套件,用来验证Linux系统可靠性、健壮性和稳定性。LTP测试套件是测试Linux内核和内核相关特性的工具的集合。 该工具的目的是通过把测…

【HMS Core】构建SplitBill应用集成多个HMS Core服务,助力您更好的了解华为生态组成

一、介绍 Duration: 3:00 总览 通过构建本次的SplitBill应用,您可以更好地了解华为生态的组成部分,包括认证服务、云存储和云数据库等Serverless服务。此外您还可以了解如何使用近距离数据通信服务的Nearby Connection功能分享文件。无需使用现金&…

重回synchronized(源码解读与实战解析篇)

读前必知 文中锁,也称为对象锁,而锁对象就是指的承载这个锁的对象,如下面,用法中所指的Object o,在print3中就是锁对象。 以下源码分析仅适用于jdk8,版本未知,因为源码提供者的源码版本访问地址…

金仓数据库KingbaseES GIN 索引

目录 一、索引的逻辑结构 二、索引的物理结构 三、GIN索引使用例子 1、前后模糊查询 2、全文检索 四、gin 索引可用于超长的字段 GIN(Generalized Inverted Index, 通用倒排索引) 是一个存储对(key, posting list)集合的索引结构,其中key是一个键值&#xff0c…

【uniapp】利用Vuex实现购物车功能

实战项目名称:实现购物车功能 文章目录一、实战步骤1. 先编辑store.js文件2. 定义方法和基本的结构3. 编写SETSHPPING二、在项目中调用1. 触发相应的mutations2. 利用computed计算数量和总价的方法提示:本实战内容大部分为具体实现的思路,界面…

C语言 2 —— 常量

常量是什么? 常量就是在程序运行过程中,值不会发生改变,而且一眼可以辨识出值的量。 如: 20,‘a’ , 3.1415926 , "helloworld" 常量的分类: 整形,浮点型,字符型&#…

成电860考研专业课考前划重点-学长课程音频转文字-用科大讯飞花钱买的-三万五千字

成电860考研专业课考前划重点-学长课程音频转文字。 这个是我2021年把视频的音频扒下来后用科大讯飞音频转文字网站上花了几十块钱买的。 说话人1 03:04 对有回放,我这边开回放了,大家可以让大家下载,然后我怕这边回放有问题,大家…

Airtest poco 入门小结

目录 一、poco介绍 1、poco能做什么 2、三种定位方式 1)基本选择器 2)相对选择器 3)空间顺序选择器 4)正则表达式方式 3、poco支持平台 二、Airtest介绍 1、Airtest能做什么 2、Airtest不能做什么 3、Airtest的图像识别…

发挥数字化平台优势,电子元器件采购商城系统助力企业改变固有低效流程

我国是全球最大的电子元器件生产国,电子元器件在国民经济发展中占据着重要地位。近年来,随着数字经济的快速发展,电子元器件的需求量也在不断升高,但疫情与国际环境对电子元器件产业要素流通仍然造成了一定困扰。在此背景下&#…

win10系统下使用onnxruntime部署yolov5模型

文章目录前言一、环境1、硬件2、软件二、YOLO模型三、新建Qt项目1、pro文件2、mainwindow.h3、mainwindow.cpp四、YOLO 类封装1、yolov5.h2、yolov5.cpp3、class.names五、效果前言 上一篇介绍过使用opencv-dnn模块实现模型推理部署,但视频效果较差,本篇…

ps2023最新版免费滤镜插件Exposure安装下载教程

滤镜插件是ps的重要功能之一,它主要是用来制作不同的图片特效。那么,ps滤镜插件哪些好用,ps滤镜插件如何获取,下面我们一起来学习这些内容。 ps滤镜插件是比较多的,下面对几款常见的ps滤镜插件进行讲解,看…

TIA博途中的TRACE功能具体使用方法示例

TIA博途中的TRACE功能具体使用方法示例 我们可以利用TRACE曲线来监控程序、排查故障,那么具体怎样使用呢,可以参考以下内容。 如下图所示,打开TIA博途,新建项目后,在左侧项目树中可以看到TRACES, 如下图所示,双击添加新轨迹,然后在右侧窗口中,添加需要监视的信号,…