#include "fastHoughGPU_kernel.cu" #include "fastHoughGPU_IFC.cuh" #include //#include extern "C" { void allocateArray(void **devPtr, int size) { cudaMalloc(devPtr, size); } void freeArray(void *devPtr) { cudaFree(devPtr); } void threadSync() { cudaThreadSynchronize(); } void copyArrayFromDevice(void* host, const void* device, int size) { cudaMemcpy(host, device, size, cudaMemcpyDeviceToHost); } void copyArrayToDevice(void* device, const void* host, int size) { cudaMemcpy(device, host, size, cudaMemcpyHostToDevice); } //copy to constant memory void setParameterSpace(float* mins, float* maxs){ cudaMemcpyToSymbol(globalMins_d, mins, 5*sizeof(float)); cudaMemcpyToSymbol(globalMaxs_d, maxs, 5*sizeof(float)); } void callRiemannKernel(float* pos_d, float* data_d, int nCl, float SCALING, int threads, int blocks) { dim3 dimGrid(blocks); dim3 dimBlock(threads); std::cout<<"Starting RiemannKernel ..."<>>(pos_d, data_d, nCl, SCALING); std::cout<<"Finished executing RiemannKernel" <>> (nodes, level, nCl, data_d, p0_d, p1_d, p2_d, p3_d, p4_d, votes_d); } }