| 187 | } |
| 188 | |
| 189 | template <typename ElemType> int |
| 190 | Spr2PerformanceTest<ElemType>::prepare(void) |
| 191 | { |
| 192 | bool useAlpha = true; |
| 193 | size_t lenX = 1 + (params_.N-1) * abs(params_.incx); |
| 194 | size_t lenY = 1 + (params_.N-1) * abs(params_.incy); |
| 195 | |
| 196 | alpha_ = convertMultiplier<ElemType>(params_.alpha); |
| 197 | |
| 198 | randomSyr2Matrices( params_.order, params_.uplo, params_.N, useAlpha, &alpha_, AP_, 0, X_, params_.incx, Y_, params_.incy); |
| 199 | |
| 200 | memcpy(backAP_, AP_, (((( params_.N*( params_.N + 1 ) )/2 )+ params_.offa)* sizeof(ElemType))); |
| 201 | mobjAP_ = base_->createEnqueueBuffer(AP_, ((( params_.N*( params_.N + 1 ) )/2 )+ params_.offa)* sizeof(*AP_), 0, CL_MEM_READ_WRITE); |
| 202 | mobjX_ = base_->createEnqueueBuffer(X_, (lenX + params_.offBX ) * sizeof(*X_), 0, CL_MEM_READ_ONLY); |
| 203 | mobjY_ = base_->createEnqueueBuffer(Y_, (lenY + params_.offCY ) * sizeof(*Y_), 0, CL_MEM_READ_ONLY); |
| 204 | |
| 205 | return ((mobjAP_ != NULL) && (mobjX_ != NULL) && (mobjY_ != NULL)) ? 0 : -1; |
| 206 | } |
| 207 | |
| 208 | template <typename ElemType> nano_time_t |
| 209 | Spr2PerformanceTest<ElemType>::etalonPerfSingle(void) |
nothing calls this directly
no test coverage detected