update chiSquare test functions to check the created kernel before execution

This commit is contained in:
Uldis Locans
2017-08-17 16:57:30 +02:00
parent 79833cf7f5
commit 6d14df5b32
2 changed files with 15 additions and 5 deletions

View File

@ -292,6 +292,9 @@ int runTest(const char *api_name, const char *device_name, bool autotune, bool m
//set autotuning on/off
if (autotune)
dksbase.setAutoTuningOn();
//check kernel
dksbase.checkMuSRKernels(1);
//tmp values to store results and tmp values for time steps and start time
double result_gpu = 0.0;
@ -373,11 +376,11 @@ int main(int argc, char* argv[]) {
}
int numPlatforms = 2;
int numPlatforms = 3;
const char *api[] = {"Cuda","OpenCL","OpenCL","OpenCL","OpenMP"};
const char *device[] = {"-gpu","-gpu","-cpu","-mic","-mic"};
for (int i = 0; i < numPlatforms; i++) {
for (int i = 2; i < numPlatforms; i++) {
runTest(api[i], device[i], autotune, mlh, asym);
}

View File

@ -392,7 +392,10 @@ int main(int argc, char *argv[]) {
dksbase.setAPI(api_name);
dksbase.setDevice(device_name);
std::cout << "Init device" << std::endl;
dksbase.initDevice();
std::cout << "Init chi square" << std::endl;
dksbase.initChiSquare(Ndata, np, nf, nm);
dksbase.writeParams(p, np);
@ -401,20 +404,24 @@ int main(int argc, char *argv[]) {
dksbase.callSetConsts(N0, TAU, BKG);
std::cout << "Compile program" << std::endl;
dksbase.callCompileProgram(sfunc);
dksbase.checkMuSRKernels(1);
if (autotune)
dksbase.setAutoTuningOn();
int oper = 0;
dksbase.getOperations(oper);
//std::cout << "Get operations" << std::endl;
//int oper = 0;
//dksbase.getOperations(oper);
cout << "=========================BEGIN TEST=========================" << endl;
cout << "Use api: " << api_name << "\t" << device_name << endl;
cout << "Number of params: " << np << endl;
cout << "Number of maps: " << nm << endl;
cout << "Number of predefined functions: " << nfunc << endl;
cout << "Number of ptx instructions: " << oper << endl;
//cout << "Number of ptx instructions: " << oper << endl;
cout << "------------------------------------------------------------" << endl;
cout << sfunc << endl;
cout << "------------------------------------------------------------" << endl;