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

Method prepare

src/tests/performance/perf-spr.cpp:174–206  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

172}
173
174template <typename ElemType> int
175SprPerformanceTest<ElemType>::prepare(void)
176{
177 bool useAlpha = true;
178 size_t lenX = 1 + (params_.N-1) * abs(params_.incx);
179
180 alpha_ = convertMultiplier<ElemType>(params_.alpha);
181/*
182 int creationFlags = 0;
183 creationFlags = creationFlags | RANDOM_INIT;
184
185 // Default is Column-Major
186
187 creationFlags = ( (this-> params_.order) == clblasRowMajor)? (creationFlags | ROW_MAJOR_ORDER) : (creationFlags);
188 creationFlags = ( (this-> params_.uplo) == clblasLower)? (creationFlags | LOWER_HALF_ONLY) : (creationFlags | UPPER_HALF_ONLY);
189 BlasRoutineID BlasFn = CLBLAS_SYR;
190
191 // Matrix A
192 populate( (A_ + params_.offa), params_.N, params_.N, params_.lda, BlasFn, creationFlags);
193 populate( X_ , lenX + params_.offBX, 1, lenX + params_.offBX, BlasFn);
194 */
195
196 randomSyrMatrices(params_.order, params_.uplo, params_.N, useAlpha, &alpha_,
197 (AP_ + params_.offa), 0, (X_ + params_.offBX), params_.incx);
198
199
200 memcpy(backAP_, AP_, ((( ( params_.N*( params_.N + 1 ) )/2 )+ params_.offa)* sizeof(ElemType)));
201
202 mobjAP_ = base_->createEnqueueBuffer(AP_, (( params_.N*( params_.N + 1 )/2 )+ params_.offa)* sizeof(*AP_), 0, CL_MEM_READ_WRITE);
203 mobjX_ = base_->createEnqueueBuffer(X_, (lenX + params_.offBX )* sizeof(*X_), 0, CL_MEM_READ_ONLY);
204
205 return ( (mobjAP_ != NULL) && (mobjX_ != NULL) ) ? 0 : -1;
206}
207
208template <typename ElemType> nano_time_t
209SprPerformanceTest<ElemType>::etalonPerfSingle(void)

Callers

nothing calls this directly

Calls 2

randomSyrMatricesFunction · 0.85
createEnqueueBufferMethod · 0.80

Tested by

no test coverage detected