summaryrefslogtreecommitdiff
path: root/external/clBLAS/src/tests/performance/PerformanceRecorder.h
diff options
context:
space:
mode:
Diffstat (limited to 'external/clBLAS/src/tests/performance/PerformanceRecorder.h')
-rw-r--r--external/clBLAS/src/tests/performance/PerformanceRecorder.h93
1 files changed, 0 insertions, 93 deletions
diff --git a/external/clBLAS/src/tests/performance/PerformanceRecorder.h b/external/clBLAS/src/tests/performance/PerformanceRecorder.h
deleted file mode 100644
index 8c2ce1c4..00000000
--- a/external/clBLAS/src/tests/performance/PerformanceRecorder.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/* ************************************************************************
- * Copyright 2013 Advanced Micro Devices, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ************************************************************************/
-
-
-/*
- * Overall performance recorder definition
- */
-
-#ifndef PERFORMANCERECORDER_H_
-#define PERFORMANCERECORDER_H_
-
-#include <clBLAS.h>
-#include <common.h>
-
-enum {
- MAX_TIMES_PER_FUNCTION = 3
-};
-
-namespace clMath {
-
-typedef double gflops_t;
-typedef double gbps_t;
-
-#if defined(_MSC_VER)
-typedef unsigned long long problem_size_t;
-#else
-typedef uint64_t problem_size_t;
-#endif
-
-class PerformanceRecorder {
-public:
- PerformanceRecorder();
- virtual ~PerformanceRecorder();
-
- // register etalon function execution time
- void etalonRegPerf(BlasFunction fn, unsigned long us, problem_size_t size);
-
- // register clblas function execution time
- void clblasRegPerf(BlasFunction fn, unsigned long us, problem_size_t size);
-
- /*
- * register time ratio of the clblas function against this one
- * of the reference implementation
- */
- void regTimeRatio(BlasFunction fn, double ratio);
-
- // get average etalon function average performance in giga-flops and gbps
- gflops_t etalonAvgPerf(BlasFunction fn);
- gbps_t etalonAvgGbpsPerf(BlasFunction fn);
-
- // get clblas function average performance in giga-flops and gbps
- gflops_t clblasAvgPerf(BlasFunction fn);
- gbps_t clblasAvgGbpsPerf(BlasFunction fn);
-
- /*
- * get average time ratio of a clblas function against
- * the reference implementation
- */
- double avgTimeRatio(BlasFunction fn);
-
-private:
- struct PerfRecord {
- gflops_t etalonGFlops;
- gflops_t clblasGFlops;
- gbps_t etalonGbps;
- gbps_t clblasGbps;
- unsigned int etalonNrRuns;
- unsigned int clblasNrRuns;
- double timeRatio;
- unsigned int nrRatios;
- };
-
- PerfRecord *records_;
-};
-
-} // namespace clMath
-
-extern clMath::PerformanceRecorder *perfRecorder;
-
-#endif /* PERFORMANCERECORDER_H_ */