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

Method etalonPerfSingle

src/tests/performance/perf-her.cpp:193–231  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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

Callers

nothing calls this directly

Calls 2

doConjugateFunction · 0.85
getCurrentTimeFunction · 0.50

Tested by

no test coverage detected