Могу ли я перейти к профилированию конкретного вызова определенного ядра?
Я использую графический интерфейс NSight Compute (ncu-ui) для профилирования ядер в определенном приложении. Мое приложение вызывает ядро
my_kernel_1
тысячи раз, затем вызывает тысячи раз. Я не хочу профилировать все вызовы всех ядер; Я просто хочу профилировать один вызов
my_kernel_2
(например, десятый или средний).
Я знаю, что когда профилирование приостановлено, я могу перейти к следующему вызову ядра; но - я не хочу нажимать эту кнопку тысячу раз. Есть ли способ перейти к следующему вызову ядра с определенным именем? Или, в качестве альтернативы, предоставить список имен ядер, которые не должны быть профилированы?
2 ответа
Если вы используете версию с графическим интерфейсом, посмотрите «Активность» > «Профиль» > «Фильтр» в окне подключения.
Завершение ответа ХёнуКима:
Вы можете организовать пропуск вызовов ядра, которое вас не интересует, и некоторых вызовов интересующего вас ядра, но только до начала профилирования; и только в неинтерактивном режиме профилирования:
- Нажмите кнопку Connect, чтобы открыть диалоговое окно Connection:
- Выберите вкладку «Общие».
- Введите имя выходного файла; профилирование будет неинтерактивным, поэтому необходим файл.
- Перейдите на вкладку «Фильтр»:
- В поле «Имя ядра» введите
regex:^my_kernel_2$
- чтобы соответствовать только интересующему вас ядру. - Выберите количество вызовов, которые вы хотите пропустить (второго ядра - вас не волнуют вызовы
my_kernel_1
, что не совпадает. Есть несколько вариантов. - Если вы не хотите профилировать все оставшиеся вызовы интересующего вас ядра, также выберите номер для профилирования.
- Нажмите Запуск. После завершения профилирования и существования процесса отчет будет загружен.