diff --git a/test/cpp/qps/smoke_test.cc b/test/cpp/qps/smoke_test.cc
index e390730832555a81403947d59e0bea2a48e3724e..2c60a9997c8903948affef8ea373b2d626226ce7 100644
--- a/test/cpp/qps/smoke_test.cc
+++ b/test/cpp/qps/smoke_test.cc
@@ -33,6 +33,8 @@
 
 #include <grpc/support/log.h>
 
+#include <signal.h>
+
 #include "test/cpp/qps/driver.h"
 #include "test/cpp/qps/report.h"
 
@@ -136,6 +138,7 @@ static void RunQPS() {
 }  // namespace grpc
 
 int main(int argc, char** argv) {
+  signal(SIGPIPE, SIG_IGN);
   using namespace grpc::testing;
   RunSynchronousStreamingPingPong();
   RunSynchronousUnaryPingPong();