1

我正在使用一些 GPU 程序(使用 CUDA 4.1 和 C),有时(很少)我必须使用 Ctrl+C 中途终止程序来处理一些异常。早些时候我尝试使用 CudaDeviceReset() 函数,但是talonmies 的这个回复取代了我对 CudaDeviceReset() 的信任,因此我开始以老式的方式处理此类异常,即“计算机重启”。随着项目规模的增长,这种方法越来越令人头疼。如果有人提出更好的解决方案,我将不胜感激。

4

1 回答 1

3

我认为这个问题更为根本——它实际上是一个应用程序设计问题,而不是一个 CUDA 问题。如果您正确设计应用程序以定期检查中断,并在中断时退出主循环并清理资源,那么您不应该遇到此问题(您甚至可以cudaDeviceReset()在退出时正确调用。

这个问题的答案可能会有所帮助。而这个。而这个

于 2012-04-24T09:11:15.530 回答