如何修复NVIDIA Tegra TX2上的tensorflow错误“GPU同步失败”

2024-05-15 17:00:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用Tensorflow和Python(2.7)在我的NVIDIA Tegra TX2上运行一个在keras中构建的模型的预测,我在Tensorflow中随机运行,出现以下异常:

Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 4504 MB memory) -> physical GPU (device: 0, name: NVIDIA Tegra X2, pci bus id: 0000:00:00.0, compute capability: 6.2) 2019-10-04 16:17:50.786531: E tensorflow/stream_executor/cuda/cuda_driver.cc:1032] could not synchronize on CUDA context: CUDA_ERROR_UNKNOWN: unknown error :: *** Begin stack trace *** stream_executor::gpu::GpuDriver::SynchronizeContext(stream_executor::gpu::GpuContext*) stream_executor::StreamExecutor::SynchronizeAllActivity() tensorflow::GPUUtil::SyncAll(tensorflow::Device*) *** End stack trace ***

。。。在

tensorflow.python.framework.errors_impl.InternalError: GPU sync failed

有时在重新启动/等待一段时间后,问题就解决了,我可以再次运行预测,但10次中有8次出现此错误。在

我已经尝试过以下方法:

  • 按如下所示更改查询量和内存使用量:
config = tf.ConfigProto()
config.gpu_options.allow_growth = True
config.per_process_gpu_memory_fraction = 0.7
session = tf.Session(config=config, ...)

如果有进一步的建议,我会很高兴的。在


Tags: configstreamgpustackdevicetensorflowcudanvidia
1条回答
网友
1楼 · 发布于 2024-05-15 17:00:51

由于此问题是间歇性的,因此可能会在tensorflow无法获得所需内存时发生。这是一个已知问题,您已经尝试了基本的故障排除步骤。由于您仍然会遇到问题,请尝试以下步骤:

重新安装libhdf5 dev,python-h5py

sudo apt-get install libhdf5-dev
sudo apt-get install python-h5py

然后按照“https://github.com/keras-team/keras/issues/4161#issuecomment-366031228”设置gpu allow growth

^{pr2}$

相关问题 更多 >