 	int is_duplicate;
 //	__shared__ int D[m*m];
 
-	computeDist(m, n, V, D);
-//	computeDist(m, n, V);
+	computeDist(m, n, V);
 	__syncthreads();
 	// let the first thread select the k-min dist
 	i = blockIdx.x;

		
		cudaMemcpy(d_V, V, m*n*sizeof(int), cudaMemcpyHostToDevice);

		knn<<<m, m, m*m*sizeof(int)>>>(m, n, k, d_V, d_out, D);

		cudaMemcpy(out, d_out, m*k*sizeof(int), cudaMemcpyDeviceToHost);


	int *V, *out;				//host copies
	int *d_V, *d_out;			//device copies
	
//	int *D;						//will be replaced with shared memory

	FILE *fp;
	if(argc != 2)
