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)应运而生&…...
Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...
.Net框架,除了EF还有很多很多......
文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...
【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
基于Springboot+Vue的办公管理系统
角色: 管理员、员工 技术: 后端: SpringBoot, Vue2, MySQL, Mybatis-Plus 前端: Vue2, Element-UI, Axios, Echarts, Vue-Router 核心功能: 该办公管理系统是一个综合性的企业内部管理平台,旨在提升企业运营效率和员工管理水…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
02.运算符
目录 什么是运算符 算术运算符 1.基本四则运算符 2.增量运算符 3.自增/自减运算符 关系运算符 逻辑运算符 &&:逻辑与 ||:逻辑或 !:逻辑非 短路求值 位运算符 按位与&: 按位或 | 按位取反~ …...
