 			
 		cout << "What number should we find primes up to?";
 		cin >> bound;
-
-		checkCudaErrors(cudaMalloc(&primeArray, sizeof(bool) * (bound + 1)));
-		checkCudaErrors(cudaMalloc(&findArray, sizeof(bool) * (bound + 1)));
-		checkCudaErrors(cudaMemset(findArray, 0, sizeof(bool) * (bound + 1)));
-		checkCudaErrors(cudaMemset(primeArray, 1, sizeof(bool) * (bound + 1)));
 		
 		switch (choice)
 		{

				t = clock();
				for (int i = 0; i < 10000; i++)
				{
					sundPartOnePerRow<<<a_gridSize, a_blockSize>>>(bound, findArray);
					cudaDeviceSynchronize(); checkCudaErrors(cudaGetLastError());
					sundPartTwoPerElementOneD<<<a_gridSize, a_blockSize>>>(bound, findArray, primeArray);

			default:
			break;
		}
		t = clock() - t;
		total_time = ((float)t) / CLOCKS_PER_SEC;
		std::cout << "Time taken to run: " << (total_time / 100) << " sec\n";
		
		//bool *validatePrimeArray = new bool[bound + 1];
		//delete [] validatePrimeArray;
		//validatePrimes(bound, );
		
		checkCudaErrors(cudaMemcpy(validatePrimeArray, primeArray, sizeof(bool) * (bound + 1), cudaMemcpyDeviceToHost));
		
		checkCudaErrors(cudaFree(findArray));
		checkCudaErrors(cudaFree(primeArray));
