summaryrefslogtreecommitdiff
path: root/utests/utest_run.cpp
diff options
context:
space:
mode:
authorMeng Mengmeng <mengmeng.meng@intel.com>2015-10-20 10:15:08 +0800
committerYang Rong <rong.r.yang@intel.com>2015-10-21 15:32:34 +0800
commit5796f4201597574d1f3ebf1d6a526d4e3787bc43 (patch)
tree38aba08120005194c95c1bcd07cb8c2f457234c5 /utests/utest_run.cpp
parent0c2296661b345bef2dc58da3ca1e6f079bd39992 (diff)
downloadbeignet-5796f4201597574d1f3ebf1d6a526d4e3787bc43.tar.gz
add utests option: -j which specifies the 'number' of jobs (multi-thread)
It's out-of-order execution in multi-tread which value range should be [1 - CPU cores]. Signed-off-by: Meng Mengmeng <mengmeng.meng@intel.com> Reviewed-by: "Yang, Rong R" <rong.r.yang@intel.com>
Diffstat (limited to 'utests/utest_run.cpp')
-rw-r--r--utests/utest_run.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/utests/utest_run.cpp b/utests/utest_run.cpp
index 3cc1b6cf..576d3818 100644
--- a/utests/utest_run.cpp
+++ b/utests/utest_run.cpp
@@ -28,9 +28,10 @@
#include <iostream>
#include <getopt.h>
-static const char *shortopts = "c:lanh";
+static const char *shortopts = "c:j:lanh";
struct option longopts[] = {
{"casename", required_argument, NULL, 'c'},
+{"jobs", required_argument, NULL, 'j'},
{"list", no_argument, NULL, 'l'},
{"all", no_argument, NULL, 'a'},
{"allnoissue", no_argument, NULL, 'n'},
@@ -46,6 +47,7 @@ Usage:\n\
\n\
option:\n\
-c <casename>: run sub-case named 'casename'\n\
+ -j <number> : specifies the 'number' of jobs (multi-thread)\n\
-l : list all the available case name\n\
-a : run all test cases\n\
-n : run all test cases without known issue (default option)\n\
@@ -85,6 +87,16 @@ int main(int argc, char *argv[])
break;
+ case 'j':
+ try {
+ UTest::runMultiThread(optarg);
+ }
+ catch (Exception e){
+ std::cout << " " << e.what() << " [SUCCESS]" << std::endl;
+ }
+
+ break;
+
case 'l':
UTest::listAllCases();
break;