 	constexpr int gridsize = 1; // EY : 20170304 for number of blocks on a grid, it seems like it's 1 for block reduce, which wasn't explicitly said so, but seemed implied in the CUB documentation
 	constexpr int M_x1 = L1;
 	constexpr int d1   = 1;
+
+	constexpr int M_x2 = L1;
+	constexpr int d2   = 2;
 	
 	///////////// END of BLOCK, GRID DIMENSIONS ////////////////////////
 	////////////////////////////////////////////////////////////////////

	// Check for kernel errors and STDIO from the kernel, if any
	CubDebugExit( cudaPeekAtLastError());
	CubDebugExit( cudaDeviceSynchronize());
	
	/* Clean up */
    if (dev_f) CubDebugExit(dev_allocator.DeviceFree(dev_f));
    if (dev_fmax) CubDebugExit(dev_allocator.DeviceFree(dev_fmax));
    if (dev_fsum) CubDebugExit(dev_allocator.DeviceFree(dev_fsum));

		
}


	constexpr float stddev1 = 1.f; // set this MANUALLY
	curandGenerateNormal(gen, dev_f, L1, mean1,stddev1); // mean, then stddev

	curandGenerateLogNormal(gen, dev_f2, L2, mean1,stddev1); // mean, then stddev

	// generate output array on host
	std::vector<float> f_vec(L1,0.f);
	float h_max = 0;
	float h_sum = 0;

	std::vector<float> f2_vec(L2,0.f);

	////////////////////////////////////////////////////////////////////
	// END of boilerplate for interesting values to test out for reduce 
	////////////////////////////////////////////////////////////////////
