Визуальный профилировщик CUDA не может завершить выполнение. Предлагаемое решение для установки параметра X Config «Интерактивный» на false не работает - PullRequest
2 голосов
/ 05 декабря 2011

Я сталкиваюсь с проблемой при выполнении Cuda Visual profiler.The профилировщик не может завершить выполнение, и я получаю следующую ошибку

Выполнение программы # 18 завершено.Ошибка: Приложение: "/ home / cnode0 / workspace / cuda / pred / pre".Файл данных профилировщика '/home/cnode0/workspace/cuda/pred/temp_compute_profiler_0_0.csv' для запуска приложения 0 не найден.

Я получил следующее предупреждение во время выполнения

Выбранные счетчики "инструкции gld 8 бит", "инструкции gld 16 бит", "инструкции gld 32 бит", "инструкции gld 64 бит", "инструкции gld 128 бит", "инструкции gst 8 бит", "инструкции gst 16 бит","gst инструкции 32-битные", "gst инструкции 64-битные", "gst инструкции 128-битные" могут привести к тому, что ядра графического процессора будут работать дольше, чем предел ожидания сторожевого таймера драйвера.В этом случае драйвер завершит работу ядра GPU, что приведет к ошибке приложения, и данные профилирования будут недоступны.При выборе этих счетчиков рекомендуется установить для параметра X Config «Интерактивный» значение false.

Я уже видел предлагаемое решение на этом форуме.

CUDA Visual Profiler«Интерактивный» параметр X config?

Как уже упоминалось в этом посте, я изменил свой xorg.conf, установив для интерактивного флага значение false, следующим образом, и перезапустил систему

Section "Device" 
Identifier "Device0" 
Driver         "nvidia"
VendorName     "NVIDIA Corporation" 
Option "Interactive" "0" 
EndSection

Ноэто не решает проблему. Я все еще получаю то же самое предупреждение снова.Я использую Ubuntu 10.04 LTS и nvidia Geforce GT430 с драйвером 285.05.09 У кого-нибудь есть подсказки по этому поводу?

Ответы [ 2 ]

2 голосов
/ 07 декабря 2011

На основании полученного вами сообщения об ошибке - профилировщик не генерирует выходные данные для самого первого запуска приложения. При первом запуске не включаются счетчики профилировщика, и поэтому эта проблема не связана с «инструкциями gld * или« инструкциями gst * ». Выходные данные профилировщика могут быть пустыми, если имеются явные вызовы синхронизации до завершения приложения. Вы можете попробовать добавление вызовов cudaDeviceSynchronize (), cudaStreamSynchronize () или cudaEventSynchronize () перед завершением работы приложения. Вы можете подтвердить, является ли это проблемой, запустив приложение из командной строки и проверив, есть ли в данных профилировщика командной строки некоторые данные.

> export COMPUTE_PROFILE=1
> <application>

Проверьте выходной файл профилировщика "cuda_profile_0.log".

Вывод будет примерно таким (без номеров строк в начале каждой строки):

1 # CUDA_PROFILE_LOG_VERSION 2.0 
2 # CUDA_DEVICE 0 Tesla C2075 
3 # CUDA_CONTEXT 1 
4 # TIMESTAMPFACTOR fffff6de60e24570 
5 method,gputime,cputime,occupancy 
6 method=[ memcpyHtoD ] gputime=[ 80.640 ] cputime=[ 278.000 ] 
7 method=[ memcpyHtoD ] gputime=[ 79.552 ] cputime=[ 237.000 ] 
8 method=[ _Z6VecAddPKfS0_Pfi ] gputime=[ 5.760 ] cputime=[ 18.000 ] occupancy=[ 1.000 ] 
9 method=[ memcpyDtoH ] gputime=[ 97.472 ] cputime=[ 647.000 ]

Вам необходимо проверить, есть ли какие-либо методы, выводимые в журнал профилировщика. В приведенном выше примере строка 5 является строкой заголовка, и в строках с 6 по 9 есть 4 метода.

Также обратите внимание, что предупреждающее сообщение Visual Profiler 'Выбранные счетчики "gld инструкции 8 бит", "gld инструкции 16 бит" ... "ожидается даже после установки интерактивного флага в значение false. Это сообщение отображается каждый раз, когда выбираются счетчики "gld инструкция * или" инструкции gst * "и по умолчанию эти счетчики выбраны.

2 голосов
/ 07 декабря 2011

Другой вариант - уменьшить количество собираемых счетчиков HW и посмотреть, поможет ли это в вашей текущей установке.

Кстати, что такое версия инструментария CUDA - используете ли вы CUDA 4.1 RC1 с драйвером 285.05.09? Если вы являетесь зарегистрированным разработчиком, можете ли вы подтвердить, что у вас есть такая же проблема с текущей версией CUDA RC2?

Вы также можете отправить тестовое приложение repro по адресу cudatools@nvidia.com

...