summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp')
-rw-r--r--searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp b/searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp
index b2b15ded274..2708399f653 100644
--- a/searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp
+++ b/searchlib/src/tests/common/sequencedtaskexecutor/sequencedtaskexecutor_benchmark.cpp
@@ -10,13 +10,19 @@ using ExecutorId = search::ISequencedTaskExecutor::ExecutorId;
int main(int argc, char *argv[]) {
unsigned long numTasks = 1000000;
unsigned numThreads = 4;
+ unsigned taskLimit = 1000;
+ SequencedTaskExecutor::Optimize optimize = SequencedTaskExecutor::Optimize::LATENCY;
std::atomic<long> counter(0);
if (argc > 1)
numTasks = atol(argv[1]);
if (argc > 2)
numThreads = atoi(argv[2]);
+ if (argc > 3)
+ taskLimit = atoi(argv[3]);
+ if (argc > 4)
+ optimize = SequencedTaskExecutor::Optimize::THROUGHPUT;
- auto executor = SequencedTaskExecutor::create(numThreads);
+ auto executor = SequencedTaskExecutor::create(numThreads, taskLimit, optimize);
for (unsigned long tid(0); tid < numTasks; tid++) {
executor->executeTask(ExecutorId(tid%numThreads), vespalib::makeLambdaTask([&counter] { counter++; }));
}