 
 	HANDLE_ERROR(cudaMalloc((void**) &devCurrVal, allocPoints * sizeof(float)));
 	HANDLE_ERROR(cudaMalloc((void**) &devPrevVal, allocPoints * sizeof(float)));
-	HANDLE_ERROR(cudaMalloc((void**) &devNextVal, allocPoints * sizeof(float)));
 
 	dim3 threadsPerBlock(256);
 	dim3 numOfBlocks(allocPoints/256);


void checkParam();
__global__ void initLine(float*, float*, int);
__global__ void updateAll(float*, float*, float*, int, int);
void printResult();

int totalSteps, totalPoints, allocPoints;
float *currVal;
float *devCurrVal, *devPrevVal, *devNextVal;

int main(int argc, char *argv[]) {
	sscanf(argv[1], "%d", &totalPoints);


	cudaFree(devCurrVal);
	cudaFree(devPrevVal);

	free(currVal);

