diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index a73364f049b5f7ee2c788b5046a7ce6aecc73855..99b4f618ea57bf90d75d71ab6194aabab3be8952 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,12 +1,17 @@ -# gen test -ADD_EXECUTABLE(paddle-mobile-test main.cpp test_helper.h elementwise_add_op_test.h test_include.h mul_op_test.h) -target_link_libraries(paddle-mobile-test paddle-mobile) - # gen test ADD_EXECUTABLE(test-conv-op operators/test_cov_op.cpp test_helper.h test_include.h) target_link_libraries(test-conv-op paddle-mobile) +# gen test +ADD_EXECUTABLE(test-mul-op operators/test_mul_op.cpp test_helper.h test_include.h) +target_link_libraries(test-mul-op paddle-mobile) + +# gen test +ADD_EXECUTABLE(test-elementwiseadd-op operators/test_elementwise_add_op.cpp test_helper.h test_include.h) +target_link_libraries(test-elementwiseadd-op paddle-mobile) + + # gen test log ADD_EXECUTABLE(test-log common/test_log.cpp) target_link_libraries(test-log paddle-mobile) diff --git a/test/main.cpp b/test/main.cpp deleted file mode 100644 index e8ad36af2d4999863ae9fb159525fac8dc30d68f..0000000000000000000000000000000000000000 --- a/test/main.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* Copyright (c) 2016 Baidu, Inc. All Rights Reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. -==============================================================================*/ - -#include "elementwise_add_op_test.h" -#include "framework/executor.h" -#include "io.h" -#include "mul_op_test.h" -#include "test_helper.h" - -// -// template -// void SetupTensor(paddle::framework::LoDTensor* input, -// paddle::framework::DDim dims, T lower, T upper) { -// static unsigned int seed = 100; -// std::mt19937 rng(seed++); -// std::uniform_real_distribution uniform_dist(0, 1); -// -// T* input_ptr = input->mutable_data(dims, paddle::platform::CPUPlace()); -// for (int i = 0; i < input->numel(); ++i) { -// input_ptr[i] = static_cast(uniform_dist(rng) * (upper - lower) + -// lower); -// } -//} - -int main() { - - std::string data_set = "cifar10"; - // - // if (data_set == "cifar10") { - // SetupTensor(&input, {FLAGS_batch_size, 3, 32, 32}, - // static_cast(0), static_cast(1)); - // } else if (data_set == "imagenet") { - // SetupTensor(&input, {FLAGS_batch_size, 3, 224, 224}, - // static_cast(0), static_cast(1)); - // } else { - // LOG(FATAL) << "Only cifar10 or imagenet is supported."; - // } - - paddle_mobile::Loader loader; - auto program = loader.Load(std::string( - "../../../test/models/image_classification_resnet.inference.model")); - - paddle_mobile::framework::Executor executor(program); - - paddle_mobile::framework::Tensor input; - SetupTensor(&input, {1, 3, 32, 32}, static_cast(0), - static_cast(1)); - float *input_ptr = input.data(); - for (int i = 0; i < input.numel(); ++i) { - // std::cout << input_ptr[i] << std::endl; - } - - // std::cout << "input: " << input.memory_size() << std::endl; - // std::cout << "input: " << input.numel() << std::endl; - - auto output = executor.predict(input); - - // std::cout << "output: " << output->memory_size() << std::endl; - // std::cout << "output: " << output->numel() << std::endl; - - // float* output_ptr = output->data(); - // for (int j = 0; j < output->numel(); ++j) { - // std::cout << " value of output: " << output_ptr[j] << std::endl; - // - paddle_mobile::test::testElementwiseAdd(); - paddle_mobile::test::testMul(); - return 0; -} diff --git a/test/elementwise_add_op_test.h b/test/operators/test_elementwise_add_op.cpp similarity index 98% rename from test/elementwise_add_op_test.h rename to test/operators/test_elementwise_add_op.cpp index b8e4b4052fe33b0eda38fd71449068b5726e08f7..b967c2491846a66f73e5e218704b6a586b64efd4 100644 --- a/test/elementwise_add_op_test.h +++ b/test/operators/test_elementwise_add_op.cpp @@ -17,8 +17,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ==============================================================================*/ #pragma once +#include "../test_include.h" #include "operators/elementwise_add_op.h" -#include "test_include.h" namespace paddle_mobile { namespace framework { @@ -123,14 +123,13 @@ template class TestElementwiseAddOp { template class TestElementwiseAddOp; } // namespace framework - -namespace test { -void testElementwiseAdd() { +} // namespace paddle_mobile +int main() { DLOG << "----------**********----------"; DLOG << "begin to run ElementAddOp Test"; paddle_mobile::Loader loader; auto program = - loader.Load(std::string("../../test/models/" + loader.Load(std::string("../../../test/models/" "image_classification_resnet.inference.model")); /// input x (1,3,224,224) @@ -159,6 +158,5 @@ void testElementwiseAdd() { DLOG << inputx_ptr[226] << " + " << inputy_ptr[2] << " = " << output_add_ptr[226]; + return 0; } -} // namespace test -} // namespace paddle_mobile diff --git a/test/mul_op_test.h b/test/operators/test_mul_op.cpp similarity index 98% rename from test/mul_op_test.h rename to test/operators/test_mul_op.cpp index 0f66abdee9f07ac7f9f45e7cfbac389758b36623..2f92ba33c63af68ac790a6e4246c267b64070762 100644 --- a/test/mul_op_test.h +++ b/test/operators/test_mul_op.cpp @@ -17,8 +17,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ==============================================================================*/ #pragma once +#include "../test_include.h" #include "operators/mul_op.h" -#include "test_include.h" namespace paddle_mobile { namespace framework { @@ -125,14 +125,14 @@ template class TestMulOp { template class TestMulOp; } // namespace framework +} // namespace paddle_mobile -namespace test { -void testMul() { +int main() { DLOG << "----------**********----------"; DLOG << "begin to run MulOp Test"; paddle_mobile::Loader loader; auto program = - loader.Load(std::string("../../test/models/" + loader.Load(std::string("../../../test/models/" "image_classification_resnet.inference.model")); /// input x (3,2,1,1) @@ -185,6 +185,5 @@ void testMul() { DLOG << inputx_ptr[0] << " x " << inputy_ptr[0] << " + " << inputx_ptr[1] << " x " << inputy_ptr[0 + 3] << " = " << output_mul_ptr[0]; + return 0; } -} // namespace test -} // namespace paddle_mobile