#define NUMPREDS 5000 #define NUMSUBS 3000 #define NUMARRAYS 4 #define UNFOLD 8 #include #include #include #include #include #include "k20.h" char p[NUMPREDS]; char* myarray[NUMARRAYS][NUMSUBS]; int answer[NUMSUBS+1]; void init(float prob) { int i,j; for(i=0;i1) { verbose=0; sscanf(argv[1],"%f",&prob); } init(prob); getrusage(RUSAGE_SELF, &startusage); time(&starttime); runtest(iterations); getrusage(RUSAGE_SELF, &endusage); time(&endtime); if (verbose) { printf("user, sys, elapsed: %f %f %d \n", (endusage.ru_utime.tv_sec-startusage.ru_utime.tv_sec) + (endusage.ru_utime.tv_usec-startusage.ru_utime.tv_usec)/1000000.0, (endusage.ru_stime.tv_sec-startusage.ru_stime.tv_sec) + (endusage.ru_stime.tv_usec-startusage.ru_stime.tv_usec)/1000000.0, endtime - starttime); printf("CPU per subscription: %f \n", (endusage.ru_utime.tv_sec-startusage.ru_utime.tv_sec + (endusage.ru_utime.tv_usec-startusage.ru_utime.tv_usec)/1000000.0) /iterations); } else { printf("%f %f\n",prob,(endusage.ru_utime.tv_sec-startusage.ru_utime.tv_sec + (endusage.ru_utime.tv_usec-startusage.ru_utime.tv_usec)/1000000.0) /iterations); } }