opencv/modules/nonfree/perf/perf_main.cpp
2014-03-31 17:30:15 +04:00

44 lines
1.1 KiB
C++

#include "perf_precomp.hpp"
#include "opencv2/ts/gpu_perf.hpp"
static const char * impls[] = {
#ifdef HAVE_CUDA
"cuda",
#endif
#ifdef HAVE_OPENCV_OCL
"ocl",
#endif
"plain"
};
#ifdef HAVE_OPENCL
#define DUMP_PROPERTY_XML(propertyName, propertyValue) \
do { \
std::stringstream ssName, ssValue;\
ssName << propertyName;\
ssValue << propertyValue; \
::testing::Test::RecordProperty(ssName.str(), ssValue.str()); \
} while (false)
#define DUMP_MESSAGE_STDOUT(msg) \
do { \
std::cout << msg << std::endl; \
} while (false)
#include "opencv2/ocl/private/opencl_dumpinfo.hpp"
#endif
int main(int argc, char **argv)
{
::perf::TestBase::setPerformanceStrategy(::perf::PERF_STRATEGY_SIMPLE);
#if defined(HAVE_CUDA) && defined(HAVE_OPENCL)
CV_PERF_TEST_MAIN_INTERNALS(nonfree, impls, perf::printCudaInfo(), dumpOpenCLDevice());
#elif defined(HAVE_CUDA)
CV_PERF_TEST_MAIN_INTERNALS(nonfree, impls, perf::printCudaInfo());
#elif defined(HAVE_OPENCL)
CV_PERF_TEST_MAIN_INTERNALS(nonfree, impls, dumpOpenCLDevice());
#else
CV_PERF_TEST_MAIN_INTERNALS(nonfree, impls)
#endif
}