编程过程中出现bug如何应对?

编程过程中出现bug如何应对?

1.找错误原因

  • 如果完全不知道出错的原因,或者说存在着很多错误的有原因,----》控制变量法

例如,昨天我在使用torchrun 多卡并行一个程序的时候,出现了大量的bug, 于是我将报错信息放在网上搜索,网上给出的答案无法帮助我解决问题。因为虽然别人得到的报错消息和我的是一致的,但是别人报错的原因和我的原因可能是不一致的。

于是今天早上我来到了实验室之后,便想到仅使用单卡运行一下试一下,看能否跑通,结果运行成功了。

由此表明,程序运行错误完全是因为多卡并行的问题。于是,错误的原因就被我们定位了。

  • 如果知道错误的原因,就可以进行debug, 包括单步调试,或者打印出来看等等。

后记: 如果实在到了晚上还找不到错误原因,果断放弃,回去睡觉,说不定第二天早上就能够找到原因解决问题了。

之所以晚上一直不想回去想继续debug的一个原因是担心明天也想不出来。但是真相是:明天上午想不出来的事情,今天晚上肯定也是想不出来的。。所以好好照顾自己,回去睡觉。

相关推荐
0白露14 小时前
关闭搜狗输入法右下角广告,可以适用于大多数应用系统通知的广告
windows·bug
一只自律的鸡1 天前
【Linux驱动】bug处理 ens33找不到IP
linux·运维·bug
Lichenpar3 天前
Springboot采用FastJson2作为MessageConverter时,配置的全局日期类型序列化转换BUG
java·开发语言·bug
Irene19913 天前
AI 找 bug 的局限性 和 Deepseek 优势明显
bug
癫狂的兔子4 天前
【bug】【Python】pandas中的DataFrame.to_excel()和ExcelWriter的区别
python·bug
癫狂的兔子4 天前
【BUG】【Python】【Spider】Compound class names are not allowed.
开发语言·python·bug
netkiller-BG7NYT5 天前
阿里云语音合成CosyVoice重大BUG被我发现了
bug
马猴烧酒.5 天前
【Mybatis出现bug】应为 <statement> 或 DELIMITER,得到 ‘id‘
java·bug·mybatis
请叫我大虾5 天前
发现一个jdk中ArrayList的小BUG
android·java·bug
离离茶5 天前
【笔记1-10】Qt bug记录:dockwidget通过raise在最前面显示,toolbar的拓展菜单失效
笔记·qt·bug