2016-04-06 4 views
0

У меня есть следующий сигнал: преобразование вызова.Обнаружение ядра ptx преобразования тяги

my_functor *f_1 = new my_functor(); 
thrust::transform(data.begin(), data.end(), data.begin(),*f_1); 

Я хочу определить его соответствующее ядро ​​в файле PTX. Но в их извращенных именах есть много ядер, содержащих my_functor.

Для ПРИМЕР-

_ZN6thrust6system4cuda6detail6detail23launch_closure_by_valueINS2_17for_each_n_detail18for_each_n_closureINS_12zip_iteratorINS_5tupleINS_6detail15normal_iteratorINS_10device_ptrIiEEEESD_NS_9null_typeESE_SE_SE_SE_SE_SE_SE_EEEEjNS9_30device_unary_transform_functorI10my_functorEENS3_20blocked_thread_arrayEEEEEvT_ 

_ZN6thrust6system4cuda6detail6detail23launch_closure_by_valueINS2_17for_each_n_detail18for_each_n_closureINS_12zip_iteratorINS_5tupleINS_6detail15normal_iteratorINS_10device_ptrIiEEEESD_NS_9null_typeESE_SE_SE_SE_SE_SE_SE_EEEElNS9_30device_unary_transform_functorI10my_functorEENS3_20blocked_thread_arrayEEEEEvT_ 

_ZN6thrust6detail15device_functionINS0_30device_unary_transform_functorI10my_functorEEvEC1ERKS4_ 

Какое ядро ​​запускается и то, что эти другие ядра?

+2

Почему, по вашему мнению, он запустит только одно ядро? – Drop

+0

@ Drop Я думал, что запуск нескольких ядер для простой арифметики будет неэффективным, а инструкции в некоторых из этих ядер очень похожи – shailesh

ответ

2

Если вы используете Visual Studio, используйте Nvidia NSIGHT Visual Studio Edition, который поставляется с CUDA Toolkit.

Перейдите в меню «Nsight», нажмите «Начать анализ производительности ...».

  • В «Тип деятельности», выберите «профиль CUDA приложения»
  • В разделе «Настройки эксперимента», отметьте «Сбор информации для CUDA Source View»
  • Выберите «Все» в разделе «Эксперименты для запуска» ListBox
  • в «Capture Control», отметьте «Открыть отчет о Stop» и выберите «CUDA Source View» в ListBox

Затем нажмите на кнопку «старт» и ждать, пока приложение будет полностью выполнена. Вы увидите дополнительный выход в консоли от Nsight.

После выполнения откроется окно «Просмотр источника CUDA». - Выберите «Источник и PTX» в списке «Просмотр» Вы сможете найти соответствие между исходным кодом и сгенерированным PTX. Когда вы нажимаете на строку в исходном коде, одна или несколько строк выделяются зеленым цветом в коде PTX.

Смежные вопросы