Как получить среднее время выполнения ядра CUDA с помощью NSight Systems или NSight Compute
Предположим, у меня есть простое тестовое приложение CLI с именем «Foo». Это приложение выполняет ядро «Bar» 100 раз в цикле. Как я могу получить среднее время выполнения ядра для Bar, используя Nsight Systems или Nsight Compute, версии этих приложений с графическим интерфейсом или CLI.
Приложение Nvidia Visual Profiler предоставляет эту информацию в диалоговом окне «Свойства» для каждого ядра как «Продолжительность (ядро)» и «Вызовы».
Я хотел бы получить ту же информацию с помощью Systems или Compute. Потому что Visual Profiler устарел.
nv-nsight-cu-cli -k Bar Foo
Я получаю 100 распечаток, по одной для каждого выполнения ядра. Мне нужна только сводная информация о панели ядра.
2 ответа
Этого можно добиться с помощью Nsight Compute CLI, используя опцию--print-summary per-gpu
: обеспечивает минимальное, максимальное и среднее время выполнения. Пример ниже:
$ ncu -k matrixMul --print-summary per-gpu ./test | grep -C8 Duration
----------------------- ------------- ---------- ---------- ----------
Metric Name Metric Unit Minimum Maximum Average
----------------------- ------------- ---------- ---------- ----------
DRAM Frequency cycle/nsecond 6.72 6.90 6.79
SM Frequency cycle/nsecond 1.48 1.51 1.49
Elapsed Cycles cycle 166,647.00 168,469.00 167,522.43
Memory Throughput % 73.43 74.10 73.76
DRAM Throughput % 2.50 2.57 2.53
Duration usecond 111.20 112.90 112.18
L1/TEX Cache Throughput % 84.50 85.35 84.99
L2 Cache Throughput % 10.40 10.64 10.54
SM Active Cycles cycle 144,432.91 145,882.70 145,043.22
Compute (SM) Throughput % 73.43 74.10 73.76
----------------------- ------------- ---------- ---------- ----------
Section: Launch Statistics
-------------------------------- --------------- ---------- ---------- ----------
С использованиемnsys
вы можете использовать
nsys stats -r cuda_kern_exec_sum <nsys-rep report>
Проверьте также:base
,:mangled
варианты отчета.
Для получения дополнительной информации о выводе отчета вы можете использовать
nsys stats --help-reports=cuda_kern_exec_sum