У меня есть следующий сигнал: преобразование вызова.Обнаружение ядра 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_
Какое ядро запускается и то, что эти другие ядра?
Почему, по вашему мнению, он запустит только одно ядро? – Drop
@ Drop Я думал, что запуск нескольких ядер для простой арифметики будет неэффективным, а инструкции в некоторых из этих ядер очень похожи – shailesh