MCPcopy Create free account
hub / github.com/clMathLibraries/clBLAS / etalonPerfSingle

Method etalonPerfSingle

src/tests/performance/perf-hemv.cpp:214–249  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

212}
213
214template <typename ElemType> nano_time_t
215HemvPerformanceTest<ElemType>::etalonPerfSingle(void)
216{
217 nano_time_t time = 0;
218 clblasOrder order;
219 clblasUplo fUplo;
220 size_t lda;
221
222#ifndef PERF_TEST_WITH_ROW_MAJOR
223 if (params_.order == clblasRowMajor) {
224 cerr << "Row major order is not allowed" << endl;
225 return NANOTIME_ERR;
226 }
227#endif
228 order = params_.order;
229 fUplo = params_.uplo;
230 lda = params_.lda;
231
232#ifdef PERF_TEST_WITH_ACML
233
234 if (order != clblasColumnMajor)
235 {
236 order = clblasColumnMajor;
237 fUplo = (params_.uplo == clblasUpper)? clblasLower : clblasUpper;
238 doConjugate( (A_ + params_.offA), params_.N, params_.N, params_.lda );
239 }
240
241 time = getCurrentTime();
242 clMath::blas::hemv(order, fUplo, params_.N, alpha, A_, params_.offA, lda,
243 X_, params_.offBX, params_.incx, beta, Y_, params_.offCY, params_.incy);
244 time = getCurrentTime() - time;
245
246#endif // PERF_TEST_WITH_ACML
247
248 return time;
249}
250
251
252template <typename ElemType> nano_time_t

Callers

nothing calls this directly

Calls 2

doConjugateFunction · 0.85
getCurrentTimeFunction · 0.50

Tested by

no test coverage detected