//--------------------------------------------------------------------------\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, naive matmul\r
- //barrier();\r
- //stats(matmul_naive(DIM_SIZE, input1_data, input2_data, results_data); barrier());\r
+ //barrier(nc);\r
+ //stats(matmul_naive(DIM_SIZE, input1_data, input2_data, results_data); barrier(nc));\r
\r
//\r
//// verify\r
- //verify(ARRAY_SIZE, results_data, verify_data);\r
+ //verifyMT(ARRAY_SIZE, results_data, verify_data);\r
//\r
//// clear results from the first trial\r
//size_t i;\r
//if (coreid == 0) \r
// for (i=0; i < ARRAY_SIZE; i++)\r
// results_data[i] = 0;\r
- //barrier();\r
+ //barrier(nc);\r
\r
\r
// Execute your faster matmul\r
- barrier();\r
- stats(matmul(DIM_SIZE, input1_data, input2_data, results_data); barrier());\r
+ barrier(nc);\r
+ stats(matmul(DIM_SIZE, input1_data, input2_data, results_data); barrier(nc));\r
\r
#ifdef DEBUG\r
- printArray("results:", ARRAY_SIZE, results_data);\r
- printArray("verify :", ARRAY_SIZE, verify_data);\r
+ printArrayMT("results:", ARRAY_SIZE, results_data);\r
+ printArrayMT("verify :", ARRAY_SIZE, verify_data);\r
#endif\r
\r
// verify\r
- verify(ARRAY_SIZE, results_data, verify_data);\r
- barrier();\r
+ verifyMT(ARRAY_SIZE, results_data, verify_data);\r
+ barrier(nc);\r
\r
exit(0);\r
}\r