fix test: skip if gpu version too low
authorYangqing Jia <jiayq84@gmail.com>
Thu, 19 Sep 2013 01:20:12 +0000 (18:20 -0700)
committerYangqing Jia <jiayq84@gmail.com>
Thu, 19 Sep 2013 01:20:12 +0000 (18:20 -0700)
src/caffeine/test_padding_layer.cpp

index 8f28040..fb95fde 100644 (file)
@@ -69,35 +69,43 @@ TYPED_TEST(PaddingLayerTest, TestCPUGrad) {
 }
 
 TYPED_TEST(PaddingLayerTest, TestGPU) {
-  LayerParameter layer_param;
-  layer_param.set_pad(1);
-  Caffeine::set_mode(Caffeine::GPU);
-  PaddingLayer<TypeParam> layer(layer_param);
-  layer.SetUp(this->blob_bottom_vec_, &(this->blob_top_vec_));
-  layer.Forward(this->blob_bottom_vec_, &(this->blob_top_vec_));
-  EXPECT_EQ(this->blob_top_->num(), 2);
-  EXPECT_EQ(this->blob_top_->channels(), 3);
-  EXPECT_EQ(this->blob_top_->height(), 6);
-  EXPECT_EQ(this->blob_top_->width(), 7);
-  for (int n = 0; n < 2; ++n) {
-    for (int c = 0; c < 3; ++c) {
-      for (int h = 0; h < 4; ++h) {
-        for (int w = 0; w < 5; ++w) {
-          EXPECT_EQ(this->blob_bottom_->data_at(n, c, h, w),
-              this->blob_top_->data_at(n, c, h + 1, w + 1));
+  if (CAFFEINE_TEST_CUDA_PROP.major >= 2) {
+    LayerParameter layer_param;
+    layer_param.set_pad(1);
+    Caffeine::set_mode(Caffeine::GPU);
+    PaddingLayer<TypeParam> layer(layer_param);
+    layer.SetUp(this->blob_bottom_vec_, &(this->blob_top_vec_));
+    layer.Forward(this->blob_bottom_vec_, &(this->blob_top_vec_));
+    EXPECT_EQ(this->blob_top_->num(), 2);
+    EXPECT_EQ(this->blob_top_->channels(), 3);
+    EXPECT_EQ(this->blob_top_->height(), 6);
+    EXPECT_EQ(this->blob_top_->width(), 7);
+    for (int n = 0; n < 2; ++n) {
+      for (int c = 0; c < 3; ++c) {
+        for (int h = 0; h < 4; ++h) {
+          for (int w = 0; w < 5; ++w) {
+            EXPECT_EQ(this->blob_bottom_->data_at(n, c, h, w),
+                this->blob_top_->data_at(n, c, h + 1, w + 1));
+          }
         }
       }
     }
+  } else {
+    LOG(ERROR) << "Skipping test (gpu version too low).";
   }
 }
 
 TYPED_TEST(PaddingLayerTest, TestGPUGrad) {
-  LayerParameter layer_param;
-  layer_param.set_pad(1);
-  Caffeine::set_mode(Caffeine::GPU);
-  PaddingLayer<TypeParam> layer(layer_param);
-  GradientChecker<TypeParam> checker(1e-2, 1e-3);
-  checker.CheckGradient(layer, this->blob_bottom_vec_, this->blob_top_vec_);
+  if (CAFFEINE_TEST_CUDA_PROP.major >= 2) {
+    LayerParameter layer_param;
+    layer_param.set_pad(1);
+    Caffeine::set_mode(Caffeine::GPU);
+    PaddingLayer<TypeParam> layer(layer_param);
+    GradientChecker<TypeParam> checker(1e-2, 1e-3);
+    checker.CheckGradient(layer, this->blob_bottom_vec_, this->blob_top_vec_);
+  } else {
+    LOG(ERROR) << "Skipping test (gpu version too low).";
+  }
 }
 
 }