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

Method areResourcesSufficient

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

Source from the content-addressed store, hash-verified

172 * run the test case
173 */
174template <typename ElemType> bool
175GercPerformanceTest<ElemType>::areResourcesSufficient(TestParams *params)
176{
177 clMath::BlasBase *base;
178 size_t gmemSize, allocSize;
179 bool ret;
180 size_t m = params->M, n = params->N;
181
182 if((A_ == NULL) || (backA_ == NULL) || (x_ == NULL) || (y_ == NULL))
183 {
184 return 0;
185 }
186
187 base = clMath::BlasBase::getInstance();
188 gmemSize = (size_t)base->availGlobalMemSize( 0 );
189 allocSize = (size_t)base->maxMemAllocSize();
190
191 ret = std::max(m, n) * params_.lda * sizeof(ElemType) < allocSize;
192 ret = ret && ( ((1 + (params_.M-1)*abs(params_.incx)))* sizeof(ElemType) < allocSize);
193 ret = ret && ( ((1 + (params_.N-1)*abs(params_.incy))) * sizeof(ElemType) < allocSize);
194
195 ret = ret && (((std::max(m, n) * params_.lda) + ((1 + (params_.M-1)*abs(params_.incx))) + ((1 + (params_.N-1)*abs(params_.incy)))) < gmemSize);
196
197 return ret;
198}
199
200template <typename ElemType> int
201GercPerformanceTest<ElemType>::prepare(void)

Callers 1

runInstanceMethod · 0.45

Calls 2

availGlobalMemSizeMethod · 0.80
maxMemAllocSizeMethod · 0.80

Tested by

no test coverage detected