Как вышеуказанная функция выполняет операцию в cuda. Нужно ли нам писать CudaMalloc () или MemCopy () вместе с этим или просто вызывать с внутренним делом все это.
я написал
nppiResizeSqrPixel_32f_C4R(&in[0],sizeofImage,StepSize,&out[0],StepSizeOutput,DestRoi,Xfactor,YFactor,NULL,NULL,16);
Здесь «in» — это вектор с входным изображением, а «out» — пустой вектор. Но после выполнения вышеупомянутой функции выходной вектор все еще равен «0». Подскажите, пожалуйста, как мне изменить размеры функции.
Он работает с данными устройства, поэтому вам нужно будет использовать распределение устройств (например, cudaMalloc
) и скопируйте данные на устройство (например, cudaMemcpy
), так далее.
Ограниченное количество документации для вызовов npp доступно на обычное место и здесь Образцы кодов CUDA которые демонстрируют некоторые примеры использования вызовов библиотеки npp.
По вопросам, которые не рассматриваются этими ресурсами, вы также можете обратиться к документации Intel ipp. Во многих случаях подпрограммы npp имитируют функциональность Intel ipp, так что вы можете получить некоторое представление о них. Вот это пример док.
Также проверьте возвращаемые значения любых соответствующих вызовов CUDA или npp, и вы также можете запустить свои коды с cuda-memcheck
чтобы получить подсказки о том, что может пойти не так.
Других решений пока нет …