aboutsummaryrefslogtreecommitdiffhomepage
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/cpp/qps/driver.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/cpp/qps/driver.cc b/test/cpp/qps/driver.cc
index 9f7d3b56a4..6959f980ae 100644
--- a/test/cpp/qps/driver.cc
+++ b/test/cpp/qps/driver.cc
@@ -44,9 +44,11 @@
#include <thread>
#include <deque>
#include <vector>
+#include <unistd.h>
#include "test/cpp/qps/histogram.h"
#include "test/cpp/qps/qps_worker.h"
#include "test/core/util/port.h"
+#include "test/core/util/test_config.h"
using std::list;
using std::thread;
@@ -96,6 +98,16 @@ ScenarioResult RunScenario(const ClientConfig& initial_client_config,
// Spawn some local workers if desired
vector<unique_ptr<QpsWorker>> local_workers;
for (int i = 0; i < abs(spawn_local_worker_count); i++) {
+ // act as if we're a new test -- gets a good rng seed
+ static bool called_init = false;
+ if (!called_init) {
+ char args_buf[100];
+ strcpy(args_buf, "some-benchmark");
+ char *args[] = {args_buf};
+ grpc_test_init(1, args);
+ called_init = true;
+ }
+
int driver_port = grpc_pick_unused_port_or_die();
int benchmark_port = grpc_pick_unused_port_or_die();
local_workers.emplace_back(new QpsWorker(driver_port, benchmark_port));