相关疑难解决方法(0)

异常后重置 Cuda 上下文

我有一个使用 Cuda / C++ 的工作应用程序,但有时,由于内存泄漏,会引发异常。我需要能够实时重置 GPU,我的应用程序是服务器,因此它必须保持可用。

我尝试过类似的方法,但似乎不起作用:

try
{
    // do process using GPU
}
catch (std::exception &e)
{
    // catching exception from cuda only

    cudaSetDevice(0);
    CUDA_RETURN_(cudaDeviceReset());
}
Run Code Online (Sandbox Code Playgroud)

我的想法是每次 GPU 出现异常时重置设备,但我无法使其正常工作。:( 顺便说一句,由于某些原因,我无法解决 Cuda 代码的所有问题,我需要一个临时解决方案。谢谢!

c++ cuda exception reset cuda-context

4
推荐指数
1
解决办法
3962
查看次数

标签 统计

c++ ×1

cuda ×1

cuda-context ×1

exception ×1

reset ×1