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

Method etalonPerfSingle

src/tests/performance/perf-hpr.cpp:188–226  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

186}
187
188template <typename ElemType> nano_time_t
189HprPerformanceTest<ElemType>::etalonPerfSingle(void)
190{
191 nano_time_t time = 0;
192 clblasOrder order;
193// size_t lda;
194
195#ifndef PERF_TEST_WITH_ROW_MAJOR
196 if (params_.order == clblasRowMajor) {
197 cerr << "Row major order is not allowed" << endl;
198 return NANOTIME_ERR;
199 }
200#endif
201
202 order = params_.order;
203
204
205#ifdef PERF_TEST_WITH_ACML
206
207 clblasOrder fOrder;
208 clblasUplo fUplo;
209 fOrder = params_.order;
210 fUplo = params_.uplo;
211
212 if (order != clblasColumnMajor)
213 {
214 doConjugate( (X_ + params_.offBX), (1 + (params_.N-1) * abs(params_.incx)), 1, 1 );
215 fOrder = clblasColumnMajor;
216 fUplo = (fUplo == clblasLower)? clblasUpper : clblasLower;
217 }
218
219 time = getCurrentTime();
220 clMath::blas::hpr(fOrder, fUplo, params_.N, CREAL(alpha_), X_, params_.offBX, params_.incx, AP_, params_.offa);
221 time = getCurrentTime() - time;
222
223#endif // PERF_TEST_WITH_ACML
224
225 return time;
226}
227
228
229template <typename ElemType> nano_time_t

Callers

nothing calls this directly

Calls 2

doConjugateFunction · 0.85
getCurrentTimeFunction · 0.50

Tested by

no test coverage detected