diff --git a/175.vpr/BUILD.gn b/175.vpr/BUILD.gn
index beab079..8fe3e98 100644
--- a/175.vpr/BUILD.gn
+++ b/175.vpr/BUILD.gn
@@ -5,6 +5,7 @@
 inputs = [
   "data/ref/input/net.in",
   "data/ref/input/arch.in",
+  "data/ref/input/place.in",
 ]
 
 executable("175.vpr") {
diff --git a/benchmarks/main.cc b/benchmarks/main.cc
index 7f3ec14..e6714f1 100644
--- a/benchmarks/main.cc
+++ b/benchmarks/main.cc
@@ -68,6 +68,11 @@
   EonFixture() : SpecFixture("252.eon"){};
 };
 
+class VprFixture : public SpecFixture {
+ protected:
+  VprFixture() : SpecFixture("175.vpr"){};
+};
+
 }  // namespace
 
 std::string executableDir;
@@ -231,6 +236,27 @@
 }
 #endif
 
+BENCHMARK_F(VprFixture, 175_Vpr)(benchmark::State& st) {
+  const char* args1[] = {
+      "net.in",      "arch.in", "place.out",  "dum.out", "-nodisp",
+      "-place_only", "-init_t", "5",          "-exit_t", "0.005",
+      "-alpha_t",    "0.9412",  "-inner_num", "2"};
+
+  // clang-format off
+  const char* args2[] = {
+      "net.in", "arch.in", "place.in", "route.out", "-nodisp", "-route_only",
+      "-route_chan_width", "15", "-pres_fac_mult", "2", "-acc_fac", "1",
+      "-first_iter_pres_fac", "4", "-initial_pres_fac", "8"};
+  // clang-format on
+
+  while (st.KeepRunning()) {
+    if ((RunSpec(args1, 14, NULL)) != 0 || (RunSpec(args2, 16, NULL)) != 0) {
+      (std::string("Error while running benchmark: ") + strerror(errno))
+          .c_str();
+    }
+  }
+}
+
 int main(int argc, char* argv[]) {
   ::benchmark::Initialize(&argc, argv);
   google::InitGoogleLogging(argv[0]);
