diff --git a/test/cpp/qps/driver.cc b/test/cpp/qps/driver.cc
index 9f7d3b56a44..6843e719e1c 100644
--- a/test/cpp/qps/driver.cc
+++ b/test/cpp/qps/driver.cc
@@ -44,6 +44,7 @@
 #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"
@@ -89,6 +90,8 @@ ScenarioResult RunScenario(const ClientConfig& initial_client_config,
     return &contexts.back();
   };
 
+  srand(time(NULL) ^ getpid());
+
   // Get client, server lists
   auto workers = get_hosts("QPS_WORKERS");
   ClientConfig client_config = initial_client_config;