Ubuntu运行深度学习代码,代码随机epoch中断没有任何报错
深度学习运行代码直接中断
文章目录
- 深度学习运行代码直接中断
- 问题描述
- 设备信息
- 问题补充
- ```解决思路```
- ```问题发现及正确解决思路```
- 新问题出现
- 最终问题:ubuntu系统,4090显卡安装英伟达驱动535.x外的驱动会导致开机无法进入桌面
- 问题记录
问题描述
运行深度学习代码,然后直接中断,就是停止不运行,显卡也停下来,没有任何报错提示。不是在固定的Epoch发生的,像是随机的。中断出现的epoch不确定,时而运行1-2个小时中断,时而运行数10个小时再发生中断。
设备信息
硬件:4090(24G,电竞判客)+i9-14900K+DDR5
系统:Ubuntu22.04.3;
深度学习环境:Pytorch112,cuda12.0,英伟达驱动535.183.01;
代码:计算机视觉相关的代码,相同能够在其它服务器上运行,应该不是代码的问题。
运行方式:使用nohup后台运行,输出的内容会用tqdm包裹。
问题补充
偶尔出现的硬件问题:
服务器的所有外接设备失效,比如网线、鼠标键盘插进去都没有什么反应,需要重启。
解决思路
以下是我排查过的问题和思路,并没有发现问题所在
已排查的错误:
- 显卡、内存等进行压力测试,并没有报任何错误;
- 主机盖打开,增加散热能力;
- 重装系统n次:重装之后一般能解决,但是过一段时间又出现;最近又重装了ubuntu22.04.3,第一次运行就发生了中断;
- 限制cpu功率,没办法解决;
- num_works设为0,仍然出现该问题;
- pin_memory关闭,还是存在该问题;
- 环境不兼容?cuda改成11.8还是有问题,Pytorch环境倒是没有尝试用其它的,感觉不是这个问题吧;
- Pytorch从1.12换成2.0.0,代码运行了12小时后中断;
- batch_size调小,显存只占用17G左右,还是会中断;
- 不使用nohup后台运行,仍然运行一会后会中断;
- 正在尝试将tqdm版本切换与另外一台服务器的相同版本,代码还是会中断;
- 每一步主要的程序使用print输出,用于定位问题所在。
问题发现及正确解决思路
代码在一台服务器上能够正常运行,在4090上运行异常,代码中断不报错。
因此,以后当大家第一时间遇见这个问题的时候,就应该主动去查看系统的运行日志,定位代码停止运行时刻对应的日志。
(1)输出系统日志,然后查看代码中断时间的日志记录
# journalctl输出系统日志,后面是将输出重定位的journal.log文件
journalctl > journal.log
(2)查看系统对应的日志记录

7月 25 12:54:04 4090 kernel: show_signal_msg: 50 callbacks suppressed
7月 25 12:54:04 4090 kernel: yida_24-0725-09[1030438]: segfault at 8 ip 000061cc54bfdefa sp 00007fff10053f90 error 4 in python3.9[61cc54a89000+223000] likely on CPU 7 (core 12, socket 0)
7月 25 12:54:04 4090 kernel: Code: 04 24 4c 8d 15 a7 e8 19 00 41 89 7e 68 49 83 c4 02 0f b6 d0 0f b6 cc 49 89 d0 41 89 c9 41 ff 24 d2 4c 8b 7d f8 44 89 4c 24 20 <49> 8b 47 08 4c 89 ff ff 90 e0 00 00 00 4c 63 4c 24 20 48 85 c0 0f
(3) 定位问题出现的原因
通过baidu发现问题出现的潜在原因,发现是底层的计算错误。因此,我去比对2台服务器的Python版本,发现正常运行代码的一台服务器gcc是11.x,另外异常的一台服务器是gcc7.x。

(4) 解决问题
最终,我通过新建Python环境并更新gcc,发现能够解决该中断问题!!!
(5) 问题由来
问题是由于安装较为老旧的miniconda,其中Python3.9的gcc是7.x,导致了这个底层的问题和计算bug。终于TMD解决这“悄无声息”的问题!!!哈哈哈哈
新问题出现
虽然,代码不会中断了,但是代码的运行偶尔会让系统崩溃!!!又尝试了多种问题均无法解决该问题。无奈,只能重装升级ubuntu23.04,成功解决系统崩溃的问题!!!这ubuntu22.04.3真的是服了!
最终问题:ubuntu系统,4090显卡安装英伟达驱动535.x外的驱动会导致开机无法进入桌面
查找到一个教程似乎能够解决该问题,将发起最终的冲刺解决全部问题。
问题记录
- 2024年08月01日21:02:23,完成bug的记录及问题解决思路;
- 感激CSDN豪俊的帮助及引导;
- 下次更新将解决安装英伟达驱动无法开机进入桌面的问题。
相关文章:
Ubuntu运行深度学习代码,代码随机epoch中断没有任何报错
深度学习运行代码直接中断 文章目录 深度学习运行代码直接中断问题描述设备信息问题补充解决思路问题发现及正确解决思路新问题出现最终问题:ubuntu系统,4090显卡安装英伟达驱动535.x外的驱动会导致开机无法进入桌面问题记录 问题描述 运行深度学习代码…...
只有4%知道的Linux,看了你也能上手Ubuntu桌面系统,Ubuntu简易设置,源更新,root密码,远程服务...
创作不易 只因热爱!! 热衷分享,一起成长! “你的鼓励就是我努力付出的动力” 最近常提的一句话,那就是“但行好事,莫问前程"! 与辉同行的董工说:守正出奇。坚持分享,坚持付出,坚持奉献,…...
Tomcat部署——个人笔记
Tomcat部署——个人笔记 文章目录 [toc]简介安装配置文件WEB项目的标准结构WEB项目部署IDEA中开发并部署运行WEB项目 本学习笔记参考尚硅谷等教程。 简介 Apache Tomcat 官网 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中…...
常见且重要的用户体验原则
以下是一些常见且重要的用户体验原则: 1. 以用户为中心 - 深入了解用户的需求、期望、目标和行为习惯。通过用户研究、调查、访谈等方法获取真实的用户反馈,以此来设计产品或服务。 - 例如,在设计一款老年手机时,充分考虑老年…...
web基础及nginx搭建
第四周 上午 静态资源 根据开发者保存在项目资源目录中的路径访问静态资源 html 图片 js css 音乐 视频 f12 ,开发者工具,网络 1 、 web 基本概念 web 服务器( web server ):也称 HTTP 服务器( HTTP …...
C++ 布隆过滤器
1. 布隆过滤器提出 我们在使用新闻客户端看新闻时,它会给我们不停地推荐新的内容,它每次推荐时要去重,去掉 那些已经看过的内容。问题来了,新闻客户端推荐系统如何实现推送去重的? 用服务器记录了用 户看过的所有历史…...
使用HTML创建用户注册表单
在当今数字化时代,网页表单对于收集用户信息和促进网站交互至关重要。无论您设计简单的注册表单还是复杂的调查表,了解HTML的基础知识可以帮助您构建有效的用户界面。在本教程中,我们将详细介绍如何使用HTML创建基本的用户注册表单。 第一步…...
Python零基础入门教程
Python零基础详细入门教程可以从以下几个方面进行学习和掌握: 一、Python基础认知 1. Python简介 由来与发展:Python是一种广泛使用的高级编程语言,由Guido van Rossum(吉多范罗苏姆)于1991年首次发布。Python以其简…...
成为git砖家(10): 根据文件内容生成SHA-1
文章目录 1. .git/objects 目录2. git cat-file 命令3. 根据文件内容生成 sha-14. 结语5. References 1. .git/objects 目录 git 是一个根据文件内容进行检索的系统。 当创建 hello.py, 填入 print("hello, world")的内容, 并执行 git add hello.py gi…...
园区导航小程序:一站式解决园区导航问题,释放存储,优化访客体验
随着园区的规模不断扩大,功能区划分日益复杂,导致访客和新员工在没有有效导航的情况下容易迷路。传统APP导航虽能解决部分问题,但其下载安装繁琐、占用手机内存大、且非高频使用导致的闲置,让许多用户望而却步。园区导航小程序的出…...
对于n进制转十进制的解法及代码(干货!)
对于p进制转十进制,我们有:(x)pa[0]*p^0a[1]*p^1a[2]*p^2...a[n]*p^n 举个例子:(11001)21*10*20*41*81*1625 (9FA)1610*16^015*16^19*16^22554 据此,我们可以编出c代码来解决问题 …...
当代互联网打工人的生存现状,看完泪流满面!
欢迎私信小编,了解更多产品信息呦~...
花几千上万学习Java,真没必要!(三十八)
测试代码1: package iotest.com; import java.nio.charset.StandardCharsets; import java.io.UnsupportedEncodingException; public class StringByteConversion { public static void main(String[] args) throws UnsupportedEncodingException { // 原始字…...
Zilliz 2025届校园招聘正式启动,寻找向量数据库内核开发工程师
为了解决非结构化数据处理问题,我们构建了向量数据库-Milvus! Milvus 数据库不仅是顶级开源基金会 LF AI&Data 的毕业项目,还曾登上数据库顶会SIGMOD、VLDB,在全球首届向量检索比赛中夺冠。目前,Milvus 项目已获得超过 2.8w s…...
TwinCAT3 新建项目教程
文章目录 打开TwinCAT 新建项目(通过TcXaeShell) 新建项目(通过VS 2019)...
大模型算法面试题(十九)
本系列收纳各种大模型面试题及答案。 1、SFT(有监督微调)、RM(奖励模型)、PPO(强化学习)的数据集格式? SFT(有监督微调)、RM(奖励模型)、PPO&…...
应用地址信息获取新技巧:Xinstall来助力
在移动互联网时代,应用获取用户地址信息的需求越来越普遍。无论是为了提供个性化服务,还是进行精准营销,地址信息都扮演着至关重要的角色。然而,如何合规、准确地获取这一信息,却是许多开发者面临的挑战。今天…...
图的最短路径算法:Dijkstra、Floyd-Warshall、Bellman-Ford
本文意在探讨图中最短路径算法 Dijkstra、Floyd-Warshall、Bellman-Ford 的对比和细节 整体分为如下四部分 总结性的比较了 Dijkstra、Floyd-Warshall、Bellman-FordDijkstra 算法介绍Floyd-Warshall 算法介绍Bellman-Ford 算法介绍 其中1、2、3 算法介绍部分会比较简洁&…...
Camera的pipline(TODO)
(TODO)...
非关系数据库-非关系数据库入门指南
非关系数据库入门指南 1. 引言:非关系数据库的兴起 在互联网技术飞速发展的今天,传统的关系型数据库面对海量数据和高并发访问时逐渐显得力不从心。于是,非关系数据库(NoSQL,Not Only SQL)应运而生&…...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...
RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...
无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
