Skip to content

Instantly share code, notes, and snippets.

@v3c70r
Last active August 29, 2015 14:26
Show Gist options
  • Save v3c70r/42aaeb4f4e68f81d91fe to your computer and use it in GitHub Desktop.
Save v3c70r/42aaeb4f4e68f81d91fe to your computer and use it in GitHub Desktop.
cuh
void *dDensSum;
void *dDensCount;
cu:init()
gpuErrchk(cudaMalloc((void**)&dDensSum, sizeof(float)));
gpuErrchk(cudaMalloc((void**)&dDensCount, sizeof(int)));
cu:~Points()
gpuErrchk(cudaFree(dDensSum))
gpuErrchk(cudafree(dDensCount))
cu: //Copy back to CPU
cudaMemcpy(GPUInt, dDensSum, sizeof(float), cudaMemcpyDeviceToHost);
cu:runKernel
cudaMemeset(dDensSum, 0, sizeof(float))
cudaMemset(dDensCount, 0, sizeof(int))
kernel.cu: computeColorGradsGlobal
//Add densSum & densCount as parameters
if (norm(colorGrad) < 0.1)
{
atomicAdd(densSum, densities[idx]);
atomicAdd(densCount, 1);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment