禁用对 Tesla C2070 和 Ubuntu 12.04 的 ECC 支持
Posted
技术标签:
【中文标题】禁用对 Tesla C2070 和 Ubuntu 12.04 的 ECC 支持【英文标题】:Disabled ECC support for Tesla C2070 and Ubuntu 12.04 【发布时间】:2012-08-31 00:27:05 【问题描述】:我有一个运行 Ubuntu 12.04 服务器的无头工作站,最近安装了新的 Tesla C2070 卡,但是在运行 CUDA SDK 中的示例时,我收到以下错误:
NVIDIA_GPU_Computing_SDK/C/bin/linux/release% ./reduction
[reduction] starting...
Using Device 0: Tesla C2070
Reducing array of type int
16777216 elements
256 threads (max)
64 blocks
reduction.cpp(473) : cudaSafeCallNoSync() Runtime API error 39 : uncorrectable ECC error encountered.
实际上,除了“deviceQuery”之外的所有其他示例都会出现此错误。
我正在使用内核 3.2.0、nvidia 驱动程序 295.41 和 Cuda 4.2.9。
经过大量搜索,找到了禁用 ecc 支持的建议:
nvidia-smi -g 0 --ecc-config=0
这很有效。但问题是 GPU 计算的可靠性如何 禁用 ecc 支持?
任何建议、建议或解决方案都将受到高度赞赏。
-康斯坦丁
【问题讨论】:
一般来说,没有ECC的GPU是相当可靠的,但是你的卡经常遇到ECC错误这一事实可能表明它有一些严重的内存问题。即使内存没问题,只是 ECC 模块本身出现故障,如果我是你,我也会尝试更换卡/退款,因为这种行为是不正常的。 【参考方案1】:我想知道这是否可能是某种兼容性问题,而不是一张坏卡。我在使用相同的 Ubuntu 版本的 Tesla C2075 时遇到了同样的问题。我们联系了 nVidia,他们告诉我们双位 ECC 错误(如在 linux 中使用 nvidia-smi -q 所见)意味着该卡可能已损坏。我们得到了一个替代品,但它有完全相同的问题。
我的两块板似乎不太可能以相同的方式损坏,所以如果我们能找到合适的,我们将在另一台机器上尝试。
我会发布我们学到的任何有趣的东西。
【讨论】:
好的,所以我们在 nVidia 的帮助下修复了它:在系统 Bios 中切换主显示驱动程序设置修复了问题。我们有一段时间有两张卡:特斯拉和一张用于显示输出的小卡。移除这个小卡对 Tesla 没有任何影响,但是在 BIOS 中切换主显示设置可以使 ECC 在 Tesla 上工作,并且与另一张卡一起使用也很好。奇怪。 澄清:为了让它工作,我们确保 Tesla 不是系统 BIOS 中设置的主要显示设备。【参考方案2】:我会附和 aland 所说的并添加我自己的经验。
我使用了许多配备 Fermi 的计算集群,并在 ECC 开启和关闭的情况下对它们进行了可变测试。我们这样做是为了增加可用内存量和计算速度,这是显而易见的。 nvidia-smi 从来没有报告任何 ECC 卡的 ECC 错误,我们也没有遇到任何表明 ECC 相关问题的运行时错误。
如果您的卡检测到无法纠正的 ECC 问题,则表明硬件存在缺陷,关闭 ECC 只会掩盖问题。运行时正确地警告您出现了错误,您不能依赖结果。
无论如何,您都可以尝试运行您的计算,看看会发生什么,但要为任何无缘无故的绝对疯狂的事情做好准备。例如,这里或那里的单个位翻转可能会对浮点数学产生巨大影响,并且如果指令损坏,可能会导致内核彻底崩溃。
如果可以的话,我会尝试更换卡而不是掩盖症状。
【讨论】:
【参考方案3】:原来我的情况和carthurs 的情况一样。我也换了卡,但是 错误并没有消失。只有在将主板的板载 VGA 设置为主 BIOS它消失了。 Tesla安装手册中应该有这方面的警告!
感谢大家的帮助。
【讨论】:
【参考方案4】:一旦发生 GPU 无法纠正的 ECC 错误,GPU 可能处于不稳定状态(例如,数据损坏可能不仅发生在用户分配的内存中,而且还发生在 GPU 操作所需的内存区域中)。要恢复 GPU,您需要重启/重启系统或尝试使用来自 nvidia-smi
的 GPU 重置
nvidia-smi -h
...
-r --gpu-reset Trigger secondary bus reset of the GPU.
Can be used to reset GPU HW state in situations
that would otherwise require a machine reboot.
Typically useful if a double bit ECC error has
occurred.
--id= switch is mandatory for this switch
输入 man nvidia-smi
以获取有关该主题的更多帮助
【讨论】:
以上是关于禁用对 Tesla C2070 和 Ubuntu 12.04 的 ECC 支持的主要内容,如果未能解决你的问题,请参考以下文章
无法在带有 Tesla K80 GPU 的各种 GCP Ubuntu VM 上安装 NVIDIA 驱动程序
NVidia 驱动程序停止在带有 Ubuntu 16.04 和 Tesla K80 GPU 的 AWS EC2 实例上工作