-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refine operators/math/CMakeLists.txt #8682
Merged
Merged
Changes from all commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
f67275a
refine operator/math/CMakeLists.txt, seperate im2col from math_function
luotao1 1ef97fa
Merge branch 'develop' into math_function
luotao1 3ddc997
rename concat_functor to concat, refine CMakeLists based on comments
luotao1 49f3f1d
add back framework_proto depends
luotao1 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,49 +1,59 @@ | ||
add_subdirectory(detail) | ||
|
||
if(WITH_GPU) | ||
nv_library(math_function SRCS math_function.cc math_function.cu im2col.cc im2col.cu DEPS cblas device_context framework_proto) | ||
nv_test(math_function_gpu_test SRCS math_function_test.cu DEPS math_function tensor) | ||
nv_library(selected_rows_functor SRCS selected_rows_functor.cc selected_rows_functor.cu DEPS selected_rows math_function) | ||
nv_test(selected_rows_functor_gpu_test SRCS selected_rows_functor_test.cu DEPS selected_rows_functor) | ||
nv_library(softmax SRCS softmax.cc softmax.cu DEPS device_context) | ||
nv_library(cross_entropy SRCS cross_entropy.cc cross_entropy.cu DEPS device_context) | ||
nv_library(pooling SRCS pooling.cc pooling.cu DEPS device_context) | ||
nv_library(depthwise_conv SRCS depthwise_conv.cu DEPS device_context) | ||
nv_library(sequence_pooling SRCS sequence_pooling.cc sequence_pooling.cu DEPS device_context math_function) | ||
nv_library(vol2col SRCS vol2col.cc vol2col.cu DEPS device_context tensor) | ||
nv_library(context_project SRCS context_project.cc context_project.cu DEPS device_context math_function) | ||
nv_library(sequence2batch SRCS sequence2batch.cc sequence2batch.cu DEPS device_context tensor math_function) | ||
nv_library(sequence_padding SRCS sequence_padding.cc sequence_padding.cu DEPS lod_tensor device_context) | ||
nv_library(sequence_scale SRCS sequence_scale.cc sequence_scale.cu DEPS lod_tensor device_context) | ||
nv_library(lstm_compute SRCS lstm_compute.cc lstm_compute.cu DEPS device_context activation_functions) | ||
nv_library(maxouting SRCS maxouting.cc maxouting.cu DEPS device_context) | ||
nv_library(unpooling SRCS unpooling.cc unpooling.cu DEPS device_context) | ||
nv_library(gru_compute SRCS gru_compute.cc gru_compute.cu DEPS device_context activation_functions math_function) | ||
nv_library(cos_sim_functor SRCS cos_sim_functor.cc cos_sim_functor.cu DEPS device_context) | ||
nv_library(concat_functor SRCS concat.cc concat.cu DEPS device_context tensor) | ||
else() | ||
cc_library(math_function SRCS math_function.cc im2col.cc DEPS cblas device_context framework_proto) | ||
cc_library(selected_rows_functor SRCS selected_rows_functor.cc DEPS selected_rows math_function) | ||
cc_library(softmax SRCS softmax.cc DEPS device_context) | ||
cc_library(cross_entropy SRCS cross_entropy.cc DEPS device_context) | ||
cc_library(pooling SRCS pooling.cc DEPS device_context) | ||
cc_library(sequence_pooling SRCS sequence_pooling.cc DEPS device_context math_function) | ||
cc_library(vol2col SRCS vol2col.cc DEPS device_context tensor) | ||
cc_library(context_project SRCS context_project.cc DEPS device_context math_function) | ||
cc_library(sequence2batch SRCS sequence2batch.cc DEPS device_context tensor math_function) | ||
cc_library(sequence_padding SRCS sequence_padding.cc DEPS lod_tensor device_context) | ||
cc_library(sequence_scale SRCS sequence_scale.cc DEPS lod_tensor device_context) | ||
cc_library(lstm_compute SRCS lstm_compute.cc DEPS device_context activation_functions) | ||
cc_library(maxouting SRCS maxouting.cc DEPS device_context) | ||
cc_library(unpooling SRCS unpooling.cc DEPS device_context) | ||
cc_library(gru_compute SRCS gru_compute.cc DEPS device_context activation_functions math_function) | ||
cc_library(cos_sim_functor SRCS cos_sim_functor.cc DEPS device_context) | ||
cc_library(concat_functor SRCS concat.cc DEPS device_context tensor) | ||
endif() | ||
function(math_library TARGET) | ||
# math_library is a function to create math library. | ||
# The interface is the same as cc_library. | ||
# But it handle split GPU/CPU code and link some common library. | ||
set(cc_srcs) | ||
set(cu_srcs) | ||
set(math_common_deps device_context framework_proto) | ||
set(multiValueArgs DEPS) | ||
cmake_parse_arguments(math_library "${options}" "${oneValueArgs}" | ||
"${multiValueArgs}" ${ARGN}) | ||
|
||
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${TARGET}.cc) | ||
list(APPEND cc_srcs ${TARGET}.cc) | ||
endif() | ||
if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${TARGET}.cu) | ||
list(APPEND cu_srcs ${TARGET}.cu) | ||
endif() | ||
|
||
list(LENGTH cc_srcs cc_srcs_len) | ||
if (WITH_GPU) | ||
nv_library(${TARGET} SRCS ${cc_srcs} ${cu_srcs} DEPS ${math_library_DEPS} ${math_common_deps}) | ||
elseif(${cc_srcs_len} GREATER 0) | ||
cc_library(${TARGET} SRCS ${cc_srcs} DEPS ${math_library_DEPS} ${math_common_deps}) | ||
endif() | ||
endfunction() | ||
|
||
cc_test(math_function_test SRCS math_function_test.cc DEPS math_function tensor) | ||
# please add new math_library in alphabetical order | ||
math_library(concat) | ||
math_library(context_project DEPS im2col math_function) | ||
math_library(cross_entropy) | ||
math_library(cos_sim_functor) | ||
math_library(depthwise_conv) | ||
math_library(gru_compute DEPS activation_functions math_function) | ||
math_library(im2col) | ||
math_library(lstm_compute DEPS activation_functions) | ||
math_library(math_function DEPS cblas) | ||
math_library(maxouting) | ||
math_library(pooling) | ||
math_library(selected_rows_functor DEPS selected_rows) | ||
math_library(sequence2batch) | ||
math_library(sequence_padding) | ||
math_library(sequence_pooling DEPS math_function) | ||
math_library(sequence_scale) | ||
math_library(softmax) | ||
math_library(unpooling) | ||
math_library(vol2col) | ||
|
||
cc_test(math_function_test SRCS math_function_test.cc) | ||
cc_test(selected_rows_functor_test SRCS selected_rows_functor_test.cc DEPS selected_rows_functor) | ||
cc_test(im2col_test SRCS im2col_test.cc DEPS math_function tensor) | ||
cc_test(vol2col_test SRCS vol2col_test.cc DEPS vol2col tensor) | ||
cc_test(im2col_test SRCS im2col_test.cc DEPS im2col) | ||
cc_test(vol2col_test SRCS vol2col_test.cc DEPS vol2col) | ||
cc_test(sequence_padding_test SRCS sequence_padding_test.cc DEPS sequence_padding) | ||
cc_test(concat_test SRCS concat_test.cc DEPS concat_functor tensor) | ||
if(WITH_GPU) | ||
nv_test(math_function_gpu_test SRCS math_function_test.cu) | ||
nv_test(selected_rows_functor_gpu_test SRCS selected_rows_functor_test.cu DEPS selected_rows_functor) | ||
endif() | ||
cc_test(concat_test SRCS concat_test.cc DEPS concat) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
好像只有
math_function
依赖framework_proto
?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
math_function
,从而依赖framework_proto
。framework_proto
,会出现https://paddleci.ngrok.io/viewLog.html?buildId=29829&buildTypeId=Paddle_PrCi&tab=buildLog&_focus=1362