Отключена поддержка ECC для Tesla C2070 и Ubuntu 12.04

У меня есть автономная рабочая станция, на которой работает сервер 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?

Любые советы, предложения или решения будут высоко оценены.

-Konstantin

4 ответа

Решение

Мне интересно, может ли это быть какой-то проблемой совместимости, а не плохой картой. Я страдаю от той же проблемы с Tesla C2075, той же версии Ubuntu. Мы связались с nVidia, и они сказали нам, что двухбитные ошибки ECC (как видно с использованием nvidia-smi -q в linux) означают, что карта, вероятно, сломана. Мы получили замену, но у нее точно такие же проблемы.

Кажется маловероятным, что обе мои платы были сломаны одинаково, поэтому мы попробуем это на другой машине, если сможем найти подходящую.

Я выложу что-нибудь интересное, что мы узнаем.

Оказалось, мой случай такой же, как у картхурса. Мне также заменили мою карту, но ошибка не исчезла. Только после установки встроенного VGA материнской платы в качестве основного в BIOS он исчез. В руководстве по установке Tesla должно быть предупреждение об этом!

Спасибо всем за помощь.

Я повторю сказанное Аландом и добавлю свой собственный опыт.

Я работал с несколькими вычислительными кластерами, оборудованными Fermi, и тестировал их по-разному, включая и выключая ECC. Мы сделали это, чтобы увеличить объем доступной памяти и скорость вычислений, что было заметно. nvidia-smi никогда не сообщала о каких-либо ошибках ECC для этих карт с ECC, и мы никогда не сталкивались с ошибками времени выполнения, которые свидетельствовали о проблемах, связанных с ECC.

Если ваша карта обнаруживает неисправимые проблемы ECC, это указывает на дефект в оборудовании, и отключение ECC только маскирует проблему. Среда выполнения справедливо предупреждает вас, что что-то плохое пошло не так, и вы не можете зависеть от результатов.

В любом случае, вы можете попытаться выполнить свои вычисления и посмотреть, что произойдет, но будьте готовы к тому, что что-то сойдет с ума без всякой реальной причины. Например, один или несколько битов могут иметь огромные последствия для математики с плавающей запятой и могут привести к краху вашего ядра, если инструкция испорчена.

Если вы можете, я бы попытался заменить карту, а не маскировать симптомы.

При возникновении неисправимой ошибки ECC для графического процессора он может оказаться в нестабильном состоянии (например, повреждение данных могло произойти не только в выделенной пользователем памяти, но и в области памяти, необходимой для работы графического процессора). Для восстановления графического процессора вам нужно либо выключить / перезагрузить систему, либо попытаться использовать сброс графического процессора из nvidia-smi

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 для получения дополнительной помощи по этой теме

Другие вопросы по тегам