Как связать события, метрики и результаты на уровне источника для профилирования программы pyCUDA с использованием nvvp
Когда я пытаюсь профилировать свое приложение pyCUDA с помощью nvvp, оно работает по большей части. Я могу нажать "Проверить использование графического процессора" и просмотреть ряд результатов анализа / предложений для моего кода, например "Низкая эффективность вычислений / Memcpy".
Однако каждый раз, когда nvvp запускает программу для анализа, я вижу следующее предупреждение.
Некоторые собранные события, показатели или результаты на уровне источника не могут быть связаны с временной шкалой сеанса. Это может помешать присвоению некоторых ядер событиям, показателям и результатам на уровне источника.
Похоже, я смогу получить более подробный анализ, если сделаю что-нибудь, чтобы это исправить. Кто-нибудь знает, как связать "собранные события, метрики или результаты на уровне источника с временной шкалой сеанса"?
1 ответ
Как кажется в документации профилировщика:
Visual Visual Profiler не может правильно импортировать данные профилировщика, сгенерированные nvprof, когда используется опция --kernels kernel-filter. Visual Profiler сообщает о предупреждении: "Некоторые собранные события или результаты на уровне источника не могут быть связаны с временной шкалой сеанса". Один из обходных путей - использовать опцию nvprof --kernels:::1 для профилирования первого вызова для всех ядер.
так что вы можете попробовать изменить эту опцию