diff --git a/test_conformance/math_brute_force/main.cpp b/test_conformance/math_brute_force/main.cpp index ec504e60..38954f3f 100644 --- a/test_conformance/math_brute_force/main.cpp +++ b/test_conformance/math_brute_force/main.cpp @@ -379,6 +379,7 @@ static int ParseArgs(int argc, const char **argv) gTestNames.push_back(""); int singleThreaded = 0; + int forcedWorkerThreads = 0; { // Extract the app name strncpy(appName, argv[0], MAXPATHLEN - 1); @@ -430,6 +431,11 @@ static int ParseArgs(int argc, const char **argv) case 'm': singleThreaded ^= 1; break; + case 't': + forcedWorkerThreads = atoi(argv[++i]); + vlog(" %d", forcedWorkerThreads); + break; + case 'g': gHasHalf ^= 1; break; case 'r': gTestFastRelaxed ^= 1; break; @@ -540,7 +546,17 @@ static int ParseArgs(int argc, const char **argv) gWimpyReductionFactor); } - if (singleThreaded) SetThreadCount(1); + if (singleThreaded) + { + vlog("*** WARNING: Force 1 worker thread ***\n"); + SetThreadCount(1); + } + else if (forcedWorkerThreads > 0) + { + vlog("*** WARNING: Force %d worker threads ***\n", + forcedWorkerThreads); + SetThreadCount(forcedWorkerThreads); + } return 0; }