首页 > 解决方案 > Pytorch 在错误的行上使 cuda 崩溃

问题描述

如何在 Pytorch 中查看哪条 python 行导致 cuda 崩溃,它在 GIL 之外执行异步代码?

是一个案例,我有 Pytorch 崩溃 cuda,在这个数据集上运行这段代码,每次运行都会在不同的 python 行上与调试器一起崩溃,这使得调试变得非常困难。

标签: pythonasynchronousdeep-learningcudapytorch

解决方案


我在论坛的一个完全不相关的帖子中找到了答案。找不到可在 Google 上搜索的答案,因此为了将来的用户而在此处发布。

由于 CUDA 调用是异步执行的,因此您应该使用

CUDA_LAUNCH_BLOCKING=1 python script.py

这可以确保正确的代码行会抛出错误消息。


推荐阅读