From 5f70e14a5c27f69a2bfcf44d0b1ea28c2160f283 Mon Sep 17 00:00:00 2001 From: Yu Yang Date: Fri, 28 Jul 2017 10:27:46 +0800 Subject: [PATCH] Memory error --- paddle/framework/grad_op_builder.cc | 2 +- paddle/operators/CMakeLists.txt | 1 + paddle/operators/fc_op_test.cc | 26 ++++++++++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 paddle/operators/fc_op_test.cc diff --git a/paddle/framework/grad_op_builder.cc b/paddle/framework/grad_op_builder.cc index 6235be75f27..6d9d174eeab 100644 --- a/paddle/framework/grad_op_builder.cc +++ b/paddle/framework/grad_op_builder.cc @@ -109,7 +109,7 @@ void GradOpBuilder::CompleteGradOp(OperatorBase* grad_op) const { } grad_op->attrs_["input_format"] = in_format; grad_op->attrs_["output_format"] = out_format; - grad_op->in_out_idxs_.reset(grad_varmap); + grad_op->in_out_idxs_.resect(grad_varmap); } } // namespace framework diff --git a/paddle/operators/CMakeLists.txt b/paddle/operators/CMakeLists.txt index 0a14dc21144..6d4f8046136 100644 --- a/paddle/operators/CMakeLists.txt +++ b/paddle/operators/CMakeLists.txt @@ -54,3 +54,4 @@ op_library(fc_op SRCS fc_op.cc DEPS mul_op rowwise_add_op sigmoid_op softmax_op net) op_library(sgd_op SRCS sgd_op.cc sgd_op.cu) +cc_test(fc_op_test SRCS fc_op_test.cc DEPS fc_op) diff --git a/paddle/operators/fc_op_test.cc b/paddle/operators/fc_op_test.cc new file mode 100644 index 00000000000..796b149afef --- /dev/null +++ b/paddle/operators/fc_op_test.cc @@ -0,0 +1,26 @@ +/* Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserve. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. */ + +#include +#include "paddle/framework/op_registry.h" +namespace f = paddle::framework; + +USE_OP_WITHOUT_KERNEL(fc); + +TEST(FC, create) { + for (size_t i = 0; i < 1000000; ++i) { + auto tmp = f::OpRegistry::CreateOp("fc", {"X", "W", "B"}, {"O"}, {}); + ASSERT_NE(tmp, nullptr); + } +} \ No newline at end of file -- GitLab