diff --git a/bench/PathBench.cpp b/bench/PathBench.cpp
index 11151d9..b3d4ab1 100644
--- a/bench/PathBench.cpp
+++ b/bench/PathBench.cpp
@@ -216,8 +216,8 @@
 
 class RandomPathBench : public SkBenchmark {
 public:
-    RandomPathBench()  {
-        fIsRendering = false;
+    virtual bool isSuitableFor(Backend backend) SK_OVERRIDE {
+        return backend == kNonRendering_Backend;
     }
 
 protected:
@@ -761,7 +761,6 @@
     };
 
     ConservativelyContainsBench(Type type)  {
-        fIsRendering = false;
         fParity = false;
         fName = "conservatively_contains_";
         switch (type) {
@@ -780,6 +779,10 @@
         }
     }
 
+    virtual bool isSuitableFor(Backend backend) SK_OVERRIDE {
+        return backend == kNonRendering_Backend;
+    }
+
 private:
     virtual const char* onGetName() SK_OVERRIDE {
         return fName.c_str();
@@ -903,7 +906,10 @@
         for (int i = 0; i < CONICS; ++i) {
             rand_conic(&fConics[i], rand);
         }
-        fIsRendering = false;
+    }
+
+    virtual bool isSuitableFor(Backend backend) SK_OVERRIDE {
+        return backend == kNonRendering_Backend;
     }
 
 protected:
