//--------------------------------------------------------------------------\r
// Helper functions\r
\r
-void printArray( char name[], int n, data_t arr[] )\r
+void printArrayMT( char name[], int n, data_t arr[] )\r
{\r
int i;\r
if (coreid != 0)\r
printf( "\n" );\r
}\r
\r
-void __attribute__((noinline)) verify(size_t n, const data_t* test, const data_t* correct)\r
+void __attribute__((noinline)) verifyMT(size_t n, const data_t* test, const data_t* correct)\r
{\r
if (coreid != 0)\r
return;\r
\r
\r
// Execute the provided, terrible vvadd\r
- barrier();\r
- stats(vvadd(DATA_SIZE, results_data, input2_data); barrier());\r
+ barrier(nc);\r
+ stats(vvadd(DATA_SIZE, results_data, input2_data); barrier(nc));\r
\r
\r
// verify\r
- verify(DATA_SIZE, results_data, verify_data);\r
+ verifyMT(DATA_SIZE, results_data, verify_data);\r
\r
// reset results from the first trial\r
if (coreid == 0) \r
for (i=0; i < DATA_SIZE; i++)\r
results_data[i] = input1_data[i];\r
}\r
- barrier();\r
+ barrier(nc);\r
\r
\r
// Execute your faster vvadd\r
- barrier();\r
- stats(vvadd_opt(DATA_SIZE, results_data, input2_data); barrier());\r
+ barrier(nc);\r
+ stats(vvadd_opt(DATA_SIZE, results_data, input2_data); barrier(nc));\r
\r
#ifdef DEBUG\r
- printArray("results: ", DATA_SIZE, results_data);\r
- printArray("verify : ", DATA_SIZE, verify_data);\r
+ printArrayMT("results: ", DATA_SIZE, results_data);\r
+ printArrayMT("verify : ", DATA_SIZE, verify_data);\r
#endif\r
\r
// verify\r
- verify(DATA_SIZE, results_data, verify_data);\r
- barrier();\r
+ verifyMT(DATA_SIZE, results_data, verify_data);\r
+ barrier(nc);\r
\r
exit(0);\r
}\r