diff options
author | Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> | 2020-08-21 09:24:48 +0300 |
---|---|---|
committer | Hennadii Stepanov <32963518+hebasto@users.noreply.github.com> | 2020-09-24 06:55:34 +0300 |
commit | 6784ac471bb32b6bb8e2de60986f123eb4990706 (patch) | |
tree | e7562ee6a686db825ecc79b9a210f9dee6fdd120 /src/bench/checkqueue.cpp | |
parent | dba30695fc42f45828db008e7e5b81cb2b5d8551 (diff) |
bench: Use CCheckQueue local thread pool
Diffstat (limited to 'src/bench/checkqueue.cpp')
-rw-r--r-- | src/bench/checkqueue.cpp | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/src/bench/checkqueue.cpp b/src/bench/checkqueue.cpp index ffa772d8c1..d7b8c1badc 100644 --- a/src/bench/checkqueue.cpp +++ b/src/bench/checkqueue.cpp @@ -10,8 +10,6 @@ #include <random.h> #include <util/system.h> -#include <boost/thread/thread.hpp> - #include <vector> static const size_t BATCHES = 101; @@ -44,12 +42,9 @@ static void CCheckQueueSpeedPrevectorJob(benchmark::Bench& bench) void swap(PrevectorJob& x){p.swap(x.p);}; }; CCheckQueue<PrevectorJob> queue {QUEUE_BATCH_SIZE}; - boost::thread_group tg; // The main thread should be counted to prevent thread oversubscription, and // to decrease the variance of benchmark results. - for (auto x = 0; x < GetNumCores() - 1; ++x) { - tg.create_thread([&]{queue.Thread();}); - } + queue.StartWorkerThreads(GetNumCores() - 1); // create all the data once, then submit copies in the benchmark. FastRandomContext insecure_rand(true); @@ -70,8 +65,7 @@ static void CCheckQueueSpeedPrevectorJob(benchmark::Bench& bench) // it is done explicitly here for clarity control.Wait(); }); - tg.interrupt_all(); - tg.join_all(); + queue.StopWorkerThreads(); ECC_Stop(); } BENCHMARK(CCheckQueueSpeedPrevectorJob); |