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

Method etalonPerfSingle

src/tests/performance/perf-ger.cpp:227–281  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

225}
226
227template <typename ElemType> nano_time_t
228GerPerformanceTest<ElemType>::etalonPerfSingle(void)
229{
230 nano_time_t time = 0;
231 clblasOrder order;
232 size_t lda, fN, fM;
233
234
235#ifndef PERF_TEST_WITH_ROW_MAJOR
236 if (params_.order == clblasRowMajor) {
237 cerr << "Row major order is not allowed" << endl;
238 return NANOTIME_ERR;
239 }
240#endif
241
242 order = params_.order;
243 lda = params_.lda;
244 fM = params_.M;
245 fN = params_.N;
246
247#ifdef PERF_TEST_WITH_ACML
248
249 clblasOrder fOrder;
250 size_t fOffx, fOffy;
251 int fIncx, fIncy;
252 ElemType *fX, *fY;
253 fOrder = params_.order;
254 fM = params_.M;
255 fN = params_.N;
256 fIncx = params_.incx;
257 fIncy = params_.incy;
258 fX = x_;
259 fY = y_;
260 fOffx = params_.offBX;
261 fOffy = params_.offCY;
262
263 if (fOrder != clblasColumnMajor) {
264 fOrder = clblasColumnMajor;
265 fM = params_.N;
266 fN = params_.M;
267 fX = y_;
268 fY = x_;
269 fIncx = params_.incy;
270 fIncy = params_.incx;
271 fOffx = params_.offCY;
272 fOffy = params_.offBX;
273 }
274 time = getCurrentTime();
275 clMath::blas::ger(order, fM, fN, alpha_, fX, fOffx, fIncx, fY, fOffy, fIncy, A_, params_.offa, lda);
276 time = getCurrentTime() - time;
277
278#endif // PERF_TEST_WITH_ACML
279
280 return time;
281}
282
283
284template <typename ElemType> nano_time_t

Callers

nothing calls this directly

Calls 1

getCurrentTimeFunction · 0.50

Tested by

no test coverage detected