Я пытаюсь профилировать приложение OpenCL, a.out
, в системе с NVIDIA TITAN X и CUDA 8.0.Как профилировать приложение OpenCL с CUDA 8.0 nvprof
Если бы это было приложение CUDA, nvprof ./a.out
было бы достаточно. Но я обнаружил, что это не работает с приложением OpenCL, с сообщением «Никакие ядра не были профилированы».
До CUDA 7.5, я успешно использовал COMPUTE_PROFILE=1
this. К сожалению, в документации говорится: «Поддержка командной строки с использованием переменной среды COMPUTE_PROFILE была отключена в выпуске CUDA 8.0».
Вопрос в том, есть ли какой-либо иной способ, кроме понижения CUDA, к профилю приложения OpenCL с nvprof?
Вы вызываете 'clReleaseContext' в своем приложении? – talonmies
@talonmies Да, он правильно вызывает функции освобождения для контекста, очереди, программы, ядра и объекта памяти. – csehydrogen