Made perf tests record module name, selected implementation and number of threads.
This commit is contained in:
parent
936236e4b1
commit
b581f27249
@ -260,6 +260,7 @@ public:
|
|||||||
static void Init(int argc, const char* const argv[]);
|
static void Init(int argc, const char* const argv[]);
|
||||||
static void Init(const std::vector<std::string> & availableImpls,
|
static void Init(const std::vector<std::string> & availableImpls,
|
||||||
int argc, const char* const argv[]);
|
int argc, const char* const argv[]);
|
||||||
|
static void RecordRunParameters();
|
||||||
static std::string getDataPath(const std::string& relativePath);
|
static std::string getDataPath(const std::string& relativePath);
|
||||||
static std::string getSelectedImpl();
|
static std::string getSelectedImpl();
|
||||||
|
|
||||||
@ -477,20 +478,22 @@ CV_EXPORTS void PrintTo(const Size& sz, ::std::ostream* os);
|
|||||||
#define CV_PERF_UNWRAP_IMPLS(...) __VA_ARGS__
|
#define CV_PERF_UNWRAP_IMPLS(...) __VA_ARGS__
|
||||||
|
|
||||||
// "plain" should always be one of the implementations
|
// "plain" should always be one of the implementations
|
||||||
#define CV_PERF_TEST_MAIN_WITH_IMPLS(testsuitname, impls, ...) \
|
#define CV_PERF_TEST_MAIN_WITH_IMPLS(modulename, impls, ...) \
|
||||||
int main(int argc, char **argv)\
|
int main(int argc, char **argv)\
|
||||||
{\
|
{\
|
||||||
while (++argc >= (--argc,-1)) {__VA_ARGS__; break;} /*this ugly construction is needed for VS 2005*/\
|
while (++argc >= (--argc,-1)) {__VA_ARGS__; break;} /*this ugly construction is needed for VS 2005*/\
|
||||||
std::string impls_[] = { CV_PERF_UNWRAP_IMPLS impls };\
|
std::string impls_[] = { CV_PERF_UNWRAP_IMPLS impls };\
|
||||||
::perf::Regression::Init(#testsuitname);\
|
::perf::Regression::Init(#modulename);\
|
||||||
::perf::TestBase::Init(std::vector<std::string>(impls_, impls_ + sizeof impls_ / sizeof *impls_),\
|
::perf::TestBase::Init(std::vector<std::string>(impls_, impls_ + sizeof impls_ / sizeof *impls_),\
|
||||||
argc, argv);\
|
argc, argv);\
|
||||||
::testing::InitGoogleTest(&argc, argv);\
|
::testing::InitGoogleTest(&argc, argv);\
|
||||||
cvtest::printVersionInfo();\
|
cvtest::printVersionInfo();\
|
||||||
|
::testing::Test::RecordProperty("cv_module_name", #modulename);\
|
||||||
|
::perf::TestBase::RecordRunParameters();\
|
||||||
return RUN_ALL_TESTS();\
|
return RUN_ALL_TESTS();\
|
||||||
}
|
}
|
||||||
|
|
||||||
#define CV_PERF_TEST_MAIN(testsuitname, ...) CV_PERF_TEST_MAIN_WITH_IMPLS(testsuitname, ("plain"), __VA_ARGS__)
|
#define CV_PERF_TEST_MAIN(modulename, ...) CV_PERF_TEST_MAIN_WITH_IMPLS(modulename, ("plain"), __VA_ARGS__)
|
||||||
|
|
||||||
#define TEST_CYCLE_N(n) for(declare.iterations(n); startTimer(), next(); stopTimer())
|
#define TEST_CYCLE_N(n) for(declare.iterations(n); startTimer(), next(); stopTimer())
|
||||||
#define TEST_CYCLE() for(; startTimer(), next(); stopTimer())
|
#define TEST_CYCLE() for(; startTimer(), next(); stopTimer())
|
||||||
|
@ -734,6 +734,11 @@ void TestBase::Init(const std::vector<std::string> & availableImpls,
|
|||||||
_timeadjustment = _calibrate();
|
_timeadjustment = _calibrate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TestBase::RecordRunParameters()
|
||||||
|
{
|
||||||
|
::testing::Test::RecordProperty("cv_implementation", param_impl);
|
||||||
|
::testing::Test::RecordProperty("cv_num_threads", param_threads);
|
||||||
|
}
|
||||||
|
|
||||||
std::string TestBase::getSelectedImpl()
|
std::string TestBase::getSelectedImpl()
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user