| 1231 | |
| 1232 | template<> |
| 1233 | void |
| 1234 | xGemm<cl_float>:: |
| 1235 | validation() |
| 1236 | { |
| 1237 | cblas_sgemm(clblasToCblas_order(order_), clblasToCblas_operation(buffer_.trans_a_), clblasToCblas_operation(buffer_.trans_b_), |
| 1238 | buffer_.m_, buffer_.n_, buffer_.k_, buffer_.alpha_, |
| 1239 | buffer_.a_ + buffer_.offA_, buffer_.lda_, |
| 1240 | buffer_.b_ + buffer_.offB_, buffer_.ldb_, |
| 1241 | buffer_.beta_, |
| 1242 | buffer_.c_copy + buffer_.offC_, buffer_.ldc_); |
| 1243 | |
| 1244 | cblas_saxpy(buffer_.lda_ * buffer_.n_, -1.0, buffer_.c_, 1, buffer_.c_copy, 1); |
| 1245 | float norm_error = cblas_snrm2(buffer_.lda_ * buffer_.n_, buffer_.c_copy, 1)/ |
| 1246 | cblas_snrm2(buffer_.lda_ * buffer_.n_, buffer_.c_, 1); |
| 1247 | printf("Error of clblas_sgemm against cblas_sgemm = %f \n", norm_error); |
| 1248 | } |
| 1249 | |
| 1250 | template<> |
| 1251 | void |
nothing calls this directly
no test coverage detected