Действительно ли тайм-аут для ядер на nvidia gpus? - PullRequest
4 голосов
/ 25 февраля 2011

в поисках ответов, почему мои ядра выдают странные сообщения об ошибках или только результаты «0». Я нашел этот ответ для SO, в котором упоминается, что для ядер, работающих на nvidia gpus, установлено время ожидания 5 с? Я погуглил по тайм-ауту, но не смог найти подтверждающих источников или дополнительной информации.

Что вы знаете об этом?

Может ли тайм-аут вызвать странное поведение для ядер с длительным временем выполнения?

Спасибо!

Ответы [ 2 ]

6 голосов
/ 25 февраля 2011

Дальнейшее поиск в Google подняло это в CUDA_Toolkit_Release_Notes_Linux.txt (Известный выпуск):

# Отдельные запуски программы GPU ограничены временем работы менее 5 секунд на GPU с подключенным дисплеем. Превышение этого временного лимита обычно вызывает ошибку запуска, о которой сообщается через драйвер CUDA или среду выполнения CUDA. Графические процессоры без подключенного дисплея не подлежат 5-секундному ограничению времени выполнения. По этой причине рекомендуется запускать CUDA на графическом процессоре, который НЕ подключен к дисплею и на котором не установлен рабочий стол Windows. В этом случае система должна содержать хотя бы один графический процессор NVIDIA, который служит в качестве основного графического адаптера.

[обновление] Похоже, официальное название этой функции - "сторожевой таймер".

1 голос
/ 25 февраля 2011

Если вы работаете в Windows Vista или более поздней версии, стек драйверов WDDM автоматически перезагрузит устройство примерно через две секунды, если вы не настроите таймауты TDR . (Windows не может определить разницу между графическим процессором с длинным ядром и заблокированным графическим процессором.) Карты марки Tesla, работающие в режиме TCC, не подпадают под обычные ограничения адаптера дисплея и поэтому могут работать с более длинными ядрами. *

...