Skip to content

Commit 09fc307

Browse files
authored
Merge pull request #5830 from luotao1/cmake
simplify the CMakeLists.txt of trainer/tests and gserver/tests
2 parents 20b885f + 362b7d8 commit 09fc307

File tree

2 files changed

+48
-93
lines changed

2 files changed

+48
-93
lines changed

paddle/gserver/tests/CMakeLists.txt

Lines changed: 31 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# gserver pacakge unittests
2-
32
add_simple_unittest(test_LinearChainCRF)
43
add_simple_unittest(test_RecurrentLayer)
54

@@ -29,93 +28,70 @@ gserver_test(test_KmaxSeqScore)
2928
gserver_test(test_Expand)
3029
gserver_test(test_MaxPoolingWithMaskOutput)
3130

31+
set(PYTHON_PATH
32+
${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d
33+
${PADDLE_SOURCE_DIR}/python/:${PADDLE_SOURCE_DIR}/paddle/gserver/tests)
34+
function(gserver_test_with_python TARGET)
35+
add_unittest_without_exec(${TARGET} ${TARGET}.cpp)
36+
add_test(NAME ${TARGET}
37+
COMMAND ${PYTHON_PATH} ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}
38+
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
39+
endfunction()
40+
41+
gserver_test_with_python(test_PyDataProvider2)
42+
if(WITH_PYTHON)
43+
gserver_test_with_python(test_PyDataProvider)
44+
endif()
45+
if(NOT MOBILE_INFERENCE)
46+
gserver_test_with_python(test_CompareTwoNets)
47+
# TODO(yuyang18): There is some bug in test_RecurrentGradientMachine, I will fix it.
48+
gserver_test_with_python(test_RecurrentGradientMachine)
49+
endif()
50+
3251
########## test_MKLDNN layers and activations ##########
3352
if(WITH_MKLDNN)
3453
add_unittest_without_exec(test_MKLDNN
3554
test_MKLDNN.cpp
3655
MKLDNNTester.cpp
3756
LayerGradUtil.cpp)
3857
add_test(NAME test_MKLDNN
39-
COMMAND .set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python
40-
${CMAKE_CURRENT_BINARY_DIR}/test_MKLDNN
58+
COMMAND ${PYTHON_PATH} ${CMAKE_CURRENT_BINARY_DIR}/test_MKLDNN
4159
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
4260
endif()
4361

44-
############## test_PyDataProvider ########################
45-
if(WITH_PYTHON)
46-
add_unittest_without_exec(test_PyDataProvider
47-
test_PyDataProvider.cpp)
48-
49-
add_test(NAME test_PyDataProvider
50-
COMMAND .set_python_path.sh -d ./gserver/tests:${PADDLE_SOURCE_DIR}/python/ ${CMAKE_CURRENT_BINARY_DIR}/test_PyDataProvider
51-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
52-
endif()
53-
5462
############### test_WarpCTCLayer #######################
5563
if(NOT WITH_DOUBLE AND NOT MOBILE_INFERENCE)
5664
add_unittest_without_exec(test_WarpCTCLayer
5765
test_WarpCTCLayer.cpp)
58-
5966
add_test(NAME test_WarpCTCLayer
6067
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/test_WarpCTCLayer --warpctc_dir=${WARPCTC_LIB_DIR}
6168
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
6269
endif()
6370

6471
if(NOT MOBILE_INFERENCE)
65-
################## test_Evaluator #######################
72+
################## test_Evaluator #############
6673
add_unittest(test_Evaluator
6774
test_Evaluator.cpp)
6875

69-
############### test_RecurrentGradientMachine ###############
70-
# TODO(yuyang18): There is some bug in test_RecurrentGradientMachine
71-
# I will fix it.
72-
add_unittest_without_exec(test_RecurrentGradientMachine
73-
test_RecurrentGradientMachine.cpp)
74-
add_test(NAME test_RecurrentGradientMachine
75-
COMMAND .set_python_path.sh -d
76-
${PADDLE_SOURCE_DIR}/python:${PADDLE_SOURCE_DIR}/paddle/gserver/tests
77-
${CMAKE_CURRENT_BINARY_DIR}/test_RecurrentGradientMachine
78-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
79-
80-
############### test_NetworkCompare ###############
76+
########### test_NetworkCompare ###############
8177
add_unittest_without_exec(test_NetworkCompare
8278
test_NetworkCompare.cpp)
8379
if(WITH_GPU)
84-
add_test(NAME test_NetworkCompare
85-
COMMAND .set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python ${CMAKE_CURRENT_BINARY_DIR}/test_NetworkCompare --use_gpu=true
86-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
80+
set(use_gpu true)
8781
else()
88-
add_test(NAME test_NetworkCompare
89-
COMMAND .set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python ${CMAKE_CURRENT_BINARY_DIR}/test_NetworkCompare --use_gpu=false
90-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
82+
set(use_gpu false)
9183
endif()
84+
add_test(NAME test_NetworkCompare
85+
COMMAND ${PYTHON_PATH} ${CMAKE_CURRENT_BINARY_DIR}/test_NetworkCompare --use_gpu=${use_gpu}
86+
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle)
9287

93-
################# test_CompareSparse ##################
88+
############ test_CompareSparse ################
9489
add_unittest_without_exec(test_CompareSparse
9590
test_CompareSparse.cpp)
9691
if(NOT ON_TRAVIS)
9792
add_test(NAME test_CompareSparse
98-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d
99-
${PADDLE_SOURCE_DIR}/python:${PADDLE_SOURCE_DIR}/paddle/gserver/tests
100-
./.set_port.sh -p port -n 6
101-
${CMAKE_CURRENT_BINARY_DIR}/test_CompareSparse
93+
COMMAND ${PYTHON_PATH} ./.set_port.sh -p port -n 6
94+
${CMAKE_CURRENT_BINARY_DIR}/test_CompareSparse
10295
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
10396
endif()
104-
105-
################ test_CompareTwoNets ######################
106-
add_unittest_without_exec(test_CompareTwoNets
107-
test_CompareTwoNets.cpp)
108-
add_test(NAME test_CompareTwoNets
109-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d
110-
${PADDLE_SOURCE_DIR}/python:${PADDLE_SOURCE_DIR}/paddle/gserver/tests
111-
${CMAKE_CURRENT_BINARY_DIR}/test_CompareTwoNets
112-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
11397
endif()
114-
115-
################ test_PyDataProvider2 ######################
116-
add_unittest_without_exec(test_PyDataProvider2
117-
test_PyDataProvider2.cpp)
118-
add_test(NAME test_PyDataProvider2
119-
COMMAND .set_python_path.sh -d ${PADDLE_SOURCE_DIR}/paddle/gserver/tests:${PADDLE_SOURCE_DIR}/python ${CMAKE_CURRENT_BINARY_DIR}/test_PyDataProvider2
120-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle
121-
)

paddle/trainer/tests/CMakeLists.txt

Lines changed: 17 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,17 @@
1-
################# test_Compare ############################
2-
add_unittest_without_exec(test_Compare
3-
test_Compare.cpp)
4-
add_test(NAME test_Compare
5-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python
6-
${CMAKE_CURRENT_BINARY_DIR}/test_Compare
7-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
1+
set(PYTHON_PATH
2+
${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d
3+
${PADDLE_SOURCE_DIR}/python/:${PADDLE_SOURCE_DIR}/paddle/trainer/tests)
4+
function(trainer_test TARGET)
5+
add_unittest_without_exec(${TARGET} ${TARGET}.cpp)
6+
add_test(NAME ${TARGET}
7+
COMMAND ${PYTHON_PATH} ${CMAKE_CURRENT_BINARY_DIR}/${TARGET}
8+
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
9+
endfunction()
810

9-
################# test_Trainer ###########################
10-
add_unittest_without_exec(test_Trainer
11-
test_Trainer.cpp)
12-
add_test(NAME test_Trainer
13-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python/
14-
${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python/
15-
${CMAKE_CURRENT_BINARY_DIR}/test_Trainer
16-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
11+
trainer_test(test_Compare)
12+
trainer_test(test_PyDataProviderWrapper)
13+
trainer_test(test_recurrent_machine_generation)
14+
trainer_test(test_Trainer)
1715

1816
############### test_TrainerOnePass ##########################
1917
if(WITH_PYTHON)
@@ -22,32 +20,13 @@ if(WITH_PYTHON)
2220
add_unittest_without_exec(test_TrainerOnePass
2321
test_TrainerOnePass.cpp)
2422
add_test(NAME test_TrainerOnePass
25-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d
26-
${PADDLE_SOURCE_DIR}/python/:${PADDLE_SOURCE_DIR}/paddle/trainer/tests
27-
${PADDLE_SOURCE_DIR}/paddle/.set_port.sh -p port ${CMAKE_CURRENT_BINARY_DIR}/test_TrainerOnePass
23+
COMMAND ${PYTHON_PATH} ${PADDLE_SOURCE_DIR}/paddle/.set_port.sh -p port
24+
${CMAKE_CURRENT_BINARY_DIR}/test_TrainerOnePass
2825
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
2926
endif()
3027

31-
################# test_recurrent_machine_generation ###############
32-
add_unittest_without_exec(test_recurrent_machine_generation
33-
test_recurrent_machine_generation.cpp)
34-
add_test(NAME test_recurrent_machine_generation
35-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python/
36-
${CMAKE_CURRENT_BINARY_DIR}/test_recurrent_machine_generation
37-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
38-
39-
#################### test_PyDataProviderWrapper #########################
40-
add_unittest_without_exec(test_PyDataProviderWrapper
41-
test_PyDataProviderWrapper.cpp)
42-
43-
add_test(NAME test_PyDataProviderWrapper
44-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d
45-
${PADDLE_SOURCE_DIR}/python/:${PADDLE_SOURCE_DIR}/paddle/trainer/tests
46-
${CMAKE_CURRENT_BINARY_DIR}/test_PyDataProviderWrapper
47-
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)
48-
4928
#################### test_config_parser #########################
5029
add_test(NAME test_config_parser
51-
COMMAND ${PADDLE_SOURCE_DIR}/paddle/.set_python_path.sh -d ${PADDLE_SOURCE_DIR}/python/
52-
${PYTHON_EXECUTABLE} ${PADDLE_SOURCE_DIR}/paddle/trainer/tests/config_parser_test.py
30+
COMMAND ${PYTHON_PATH} ${PYTHON_EXECUTABLE}
31+
${PADDLE_SOURCE_DIR}/paddle/trainer/tests/config_parser_test.py
5332
WORKING_DIRECTORY ${PADDLE_SOURCE_DIR}/paddle/)

0 commit comments

Comments
 (0)