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

Method GbmvPerformanceTest

src/tests/performance/perf-gbmv.cpp:111–137  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

109
110template <typename ElemType>
111GbmvPerformanceTest<ElemType>::GbmvPerformanceTest(
112 BlasFunction fn,
113 TestParams *params) : PerformanceTest(fn,
114 (problem_size_t)( ( (((params->order == clblasColumnMajor)? params->N : params->M) * (params->KL + params->KU + 1) // A-access
115 - (params->KL*(params->KL+1) + params->KU*(params->KU+1)) ) // Substract hole-part for A & X
116 +((params->transA == clblasNoTrans)? ((params->KL + params->KU + 1) * params->M + 2*params->M) // X & Y access
117 : ((params->KL + params->KU + 1) * params->N + 2*params->N) ) // X & Y for Trans case
118 ) * sizeof(ElemType) ) ),
119 params_(*params), mobjA_(NULL), mobjX_(NULL), mobjY_(NULL)
120{
121 size_t lenA, lenX, lenY;
122 lenA = ((params_.order == clblasColumnMajor)? params_.N : params_.M) * (params_.lda) + params_.offA;
123 lenX = (((params_.transA == clblasNoTrans)? params_.N : params_.M) - 1)* params_.incx + 1 + params_.offBX;
124 lenY = (((params_.transA == clblasNoTrans)? params_.M : params_.N) - 1)* params_.incy + 1 + params_.offCY;
125 A_ = new ElemType[ lenA ];
126 X_ = new ElemType[ lenX ];
127 Y_ = new ElemType[ lenY ];
128 backY_ = new ElemType[ lenY ];
129 alpha = convertMultiplier<ElemType>(params_.alpha);
130 beta = convertMultiplier<ElemType>(params_.beta);
131
132 base_ = ::clMath::BlasBase::getInstance();
133
134 mobjA_ = NULL;
135 mobjX_ = NULL;
136 mobjY_ = NULL;
137}
138
139template <typename ElemType>
140GbmvPerformanceTest<ElemType>::~GbmvPerformanceTest()

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected