 	float sched_cpu, sched_gpu;
 };
 
-SpeedInfo SpeedCompareTest(int w,bool gc=false)
+SpeedInfo SpeedCompareTest(int w, LocalizeModeEnum locMode=LT_QI)
 {
 	int cudaBatchSize = 1024;
 	int count = 20000;

	cudaBatchSize = 32;
#endif
	bool haveZLUT = false;
	LocMode_t locType = (LocMode_t)( LT_QI|LT_NormalizeProfile );

	QTrkComputedConfig cfg;
	cfg.width = cfg.height = w;
	cfg.qi_iterations = 4;
	//std::vector<int> devices(1); devices[0]=1;
	//SetCUDADevices(devices);
	cfg.cuda_device = QTrkCUDA_UseAll;

	return info;
}

void ProfileSpeedVsROI(LocalizeModeEnum locMode, const char *outputcsv)
{
	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);
		values[i*3+0] = roi;
		values[i*3+1] = info.speed_cpu;
		values[i*3+2] = info.speed_gpu;
	}

	const char *labels[] = { "ROI", "CPU", "CUDA" };
	WriteImageAsCSV(outputcsv, values, 3, N, labels);
	delete[] values;
}

