 	float sched_cpu, sched_gpu;
 };
 
-SpeedInfo SpeedCompareTest(int w, LocalizeModeEnum locMode, bool haveZLUT)
+SpeedInfo SpeedCompareTest(int w, LocalizeModeEnum locMode, bool haveZLUT, int qi_iterations=3)
 {
 	int cudaBatchSize = 1024;
-	int count = 20000;
+	int count = 60000;
 
 #ifdef _DEBUG
 	count = 100;

//	TestImageLUT("../cputrack-test/lut000.jpg");
	//TestRadialLUTGradientMethod();

	BenchmarkParams();

//	BasicQTrkTest();
//	TestCMOSNoiseInfluence<QueuedCUDATracker>("../cputrack-test/lut000.jpg");

	return info;
}

void ProfileSpeedVsROI(LocalizeModeEnum locMode, const char *outputcsv, bool haveZLUT, int qi_iterations)
{
	int N=24;
	float* values = new float[N*3];

	for (int i=0;i<N;i++) {
		int roi = 40+i*5;
		SpeedInfo info = SpeedCompareTest(roi, locMode, haveZLUT, qi_iterations);
		values[i*3+0] = roi;
		values[i*3+1] = info.speed_cpu;
		values[i*3+2] = info.speed_gpu;
