#include "caffe2/operators/elementwise_op_test.h" #include "caffe2/core/context_gpu.h" #include "caffe2/core/flags.h" C10_DECLARE_string(caffe_test_root); template <> void CopyVector(const int N, const bool* x, bool* y) { CUDA_CHECK(cudaMemcpy(y, x, N * sizeof(bool), cudaMemcpyHostToDevice)); } template <> caffe2::OperatorDef CreateOperatorDef() { caffe2::OperatorDef def; def.mutable_device_option()->set_device_type(caffe2::PROTO_CUDA); return def; } TEST(ElementwiseGPUTest, And) { if (!caffe2::HasCudaGPU()) return; elementwiseAnd(); } TEST(ElementwiseGPUTest, Or) { if (!caffe2::HasCudaGPU()) return; elementwiseOr(); } TEST(ElementwiseGPUTest, Xor) { if (!caffe2::HasCudaGPU()) return; elementwiseXor(); } TEST(ElementwiseGPUTest, Not) { if (!caffe2::HasCudaGPU()) return; elementwiseNot(); }