Skip to content

Commit 56e7384

Browse files
committed
Merge remote-tracking branch 'upstream/develop' into slice/list
2 parents 7f137b5 + 0a5c99e commit 56e7384

File tree

513 files changed

+27748
-4949
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

513 files changed

+27748
-4949
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ if(WIN32)
130130
# NOTE(zhouwei25): GPU compile have too high memory utilization when parallel compiling,
131131
# For Visual Studio generators, /MP should be added.
132132
# For other generators like Ninja, it is not need to add /MP.
133-
if("${CMAKE_GENERATOR}" STREQUAL "Visual Studio" AND NOT WITH_GPU)
133+
if(CMAKE_GENERATOR MATCHES "Visual Studio" AND NOT WITH_GPU)
134134
math(EXPR PROCESS_MAX "${CPU_CORES} * 2 / 3")
135135
set(${flag_var} "${${flag_var}} /MP${PROCESS_MAX}")
136136
endif()

cmake/external/gflags.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ ExternalProject_Add(
4141
${SHALLOW_CLONE}
4242
"${GFLAGS_DOWNLOAD_CMD}"
4343
PREFIX ${GFLAGS_PREFIX_DIR}
44+
UPDATE_COMMAND ""
4445
SOURCE_DIR ${GFLAGS_SOURCE_DIR}
4546
BUILD_COMMAND ${BUILD_COMMAND}
4647
INSTALL_COMMAND ${INSTALL_COMMAND}

cmake/external/glog.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ ExternalProject_Add(
4545
DEPENDS gflags
4646
PREFIX ${GLOG_PREFIX_DIR}
4747
SOURCE_DIR ${GLOG_SOURCE_DIR}
48+
UPDATE_COMMAND ""
4849
CMAKE_ARGS -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
4950
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
5051
-DCMAKE_CXX_FLAGS=${GLOG_CMAKE_CXX_FLAGS}

cmake/external/mkldnn.cmake

Lines changed: 25 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -79,49 +79,44 @@ ExternalProject_Add(
7979
-DCMAKE_CXX_FLAGS=${MKLDNN_CXXFLAG}
8080
-DDNNL_BUILD_TESTS=OFF -DDNNL_BUILD_EXAMPLES=OFF
8181
CMAKE_CACHE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=${MKLDNN_INSTALL_DIR}
82-
BUILD_BYPRODUCTS ${MKLDNN_LIB}
8382
)
8483

85-
ADD_LIBRARY(shared_mkldnn SHARED IMPORTED GLOBAL)
86-
SET_PROPERTY(TARGET shared_mkldnn PROPERTY IMPORTED_LOCATION ${MKLDNN_LIB})
87-
ADD_DEPENDENCIES(shared_mkldnn ${MKLDNN_PROJECT})
8884
MESSAGE(STATUS "MKLDNN library: ${MKLDNN_LIB}")
8985
add_definitions(-DPADDLE_WITH_MKLDNN)
90-
91-
# generate a static dummy target to track mkldnn dependencies
92-
# for cc_library(xxx SRCS xxx.c DEPS mkldnn)
93-
generate_dummy_static_lib(LIB_NAME "mkldnn" GENERATOR "mkldnn.cmake")
94-
95-
TARGET_LINK_LIBRARIES(mkldnn ${MKLDNN_LIB} ${MKLML_IOMP_LIB})
96-
ADD_DEPENDENCIES(mkldnn ${MKLDNN_PROJECT})
97-
9886
# copy the real so.0 lib to install dir
9987
# it can be directly contained in wheel or capi
10088
if(WIN32)
10189
SET(MKLDNN_SHARED_LIB ${MKLDNN_INSTALL_DIR}/bin/mkldnn.dll)
10290

10391
file(TO_NATIVE_PATH ${MKLDNN_INSTALL_DIR} NATIVE_MKLDNN_INSTALL_DIR)
10492
file(TO_NATIVE_PATH ${MKLDNN_SHARED_LIB} NATIVE_MKLDNN_SHARED_LIB)
105-
ADD_CUSTOM_COMMAND(TARGET ${MKLDNN_PROJECT} POST_BUILD
106-
COMMAND (copy ${NATIVE_MKLDNN_INSTALL_DIR}\\bin\\dnnl.dll ${NATIVE_MKLDNN_SHARED_LIB} /Y))
107-
add_custom_command(TARGET ${MKLDNN_PROJECT} POST_BUILD VERBATIM
108-
COMMAND dumpbin /exports ${MKLDNN_INSTALL_DIR}/bin/mkldnn.dll > ${MKLDNN_INSTALL_DIR}/bin/exports.txt)
109-
add_custom_command(TARGET ${MKLDNN_PROJECT} POST_BUILD VERBATIM
110-
COMMAND echo LIBRARY mkldnn > ${MKLDNN_INSTALL_DIR}/bin/mkldnn.def)
111-
add_custom_command(TARGET ${MKLDNN_PROJECT} POST_BUILD VERBATIM
112-
COMMAND echo EXPORTS >> ${MKLDNN_INSTALL_DIR}/bin/mkldnn.def)
113-
add_custom_command(TARGET ${MKLDNN_PROJECT} POST_BUILD VERBATIM
114-
COMMAND echo off && (for /f "skip=19 tokens=4" %A in (${MKLDNN_INSTALL_DIR}/bin/exports.txt) do echo %A >> ${MKLDNN_INSTALL_DIR}/bin/mkldnn.def) && echo on)
115-
add_custom_command(TARGET ${MKLDNN_PROJECT} POST_BUILD VERBATIM
116-
COMMAND lib /def:${MKLDNN_INSTALL_DIR}/bin/mkldnn.def /out:${MKLDNN_INSTALL_DIR}/bin/mkldnn.lib /machine:x64)
93+
94+
ADD_CUSTOM_COMMAND(OUTPUT ${MKLDNN_LIB}
95+
COMMAND (copy ${NATIVE_MKLDNN_INSTALL_DIR}\\bin\\dnnl.dll ${NATIVE_MKLDNN_SHARED_LIB} /Y)
96+
COMMAND dumpbin /exports ${MKLDNN_INSTALL_DIR}/bin/mkldnn.dll > ${MKLDNN_INSTALL_DIR}/bin/exports.txt
97+
COMMAND echo LIBRARY mkldnn > ${MKLDNN_INSTALL_DIR}/bin/mkldnn.def
98+
COMMAND echo EXPORTS >> ${MKLDNN_INSTALL_DIR}/bin/mkldnn.def
99+
COMMAND echo off && (for /f "skip=19 tokens=4" %A in (${MKLDNN_INSTALL_DIR}/bin/exports.txt) do echo %A >> ${MKLDNN_INSTALL_DIR}/bin/mkldnn.def) && echo on
100+
COMMAND lib /def:${MKLDNN_INSTALL_DIR}/bin/mkldnn.def /out:${MKLDNN_LIB} /machine:x64
101+
COMMENT "Generate mkldnn.lib manually--->"
102+
DEPENDS ${MKLDNN_PROJECT}
103+
VERBATIM)
104+
ADD_CUSTOM_TARGET(mkldnn_cmd ALL DEPENDS ${MKLDNN_LIB})
117105
else(WIN32)
118106
SET(MKLDNN_SHARED_LIB ${MKLDNN_INSTALL_DIR}/libmkldnn.so.0)
119107
SET(MKLDNN_SHARED_LIB_1 ${MKLDNN_INSTALL_DIR}/libdnnl.so.1)
120108
SET(MKLDNN_SHARED_LIB_2 ${MKLDNN_INSTALL_DIR}/libdnnl.so.2)
121-
ADD_CUSTOM_COMMAND(TARGET ${MKLDNN_PROJECT} POST_BUILD
122-
COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_LIB} ${MKLDNN_SHARED_LIB})
123-
ADD_CUSTOM_COMMAND(TARGET ${MKLDNN_PROJECT} POST_BUILD
124-
COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_LIB} ${MKLDNN_SHARED_LIB_1})
125-
ADD_CUSTOM_COMMAND(TARGET ${MKLDNN_PROJECT} POST_BUILD
126-
COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_LIB} ${MKLDNN_SHARED_LIB_2})
109+
ADD_CUSTOM_COMMAND(OUTPUT ${MKLDNN_SHARED_LIB_2}
110+
COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_LIB} ${MKLDNN_SHARED_LIB}
111+
COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_LIB} ${MKLDNN_SHARED_LIB_1}
112+
COMMAND ${CMAKE_COMMAND} -E copy ${MKLDNN_LIB} ${MKLDNN_SHARED_LIB_2}
113+
DEPENDS ${MKLDNN_PROJECT})
114+
ADD_CUSTOM_TARGET(mkldnn_cmd ALL DEPENDS ${MKLDNN_SHARED_LIB_2})
127115
endif(WIN32)
116+
117+
# generate a static dummy target to track mkldnn dependencies
118+
# for cc_library(xxx SRCS xxx.c DEPS mkldnn)
119+
generate_dummy_static_lib(LIB_NAME "mkldnn" GENERATOR "mkldnn.cmake")
120+
121+
TARGET_LINK_LIBRARIES(mkldnn ${MKLDNN_LIB} ${MKLML_IOMP_LIB})
122+
ADD_DEPENDENCIES(mkldnn ${MKLDNN_PROJECT} mkldnn_cmd)

cmake/external/protobuf.cmake

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -198,16 +198,16 @@ FUNCTION(build_protobuf TARGET_NAME BUILD_FOR_HOST)
198198
"-Dprotobuf_MSVC_STATIC_RUNTIME=${MSVC_STATIC_CRT}")
199199
ENDIF()
200200

201-
if(WITH_ASCEND AND NOT WITH_ASCEND_CXX11)
202-
SET(PROTOBUF_REPOSITORY https://gitee.com/tianjianhe/protobuf.git)
203-
SET(PROTOBUF_TAG v3.8.0)
204-
elseif(WITH_ASCEND_CL AND NOT WITH_ASCEND_CXX11)
205-
SET(PROTOBUF_REPOSITORY https://gitee.com/tianjianhe/protobuf.git)
206-
SET(PROTOBUF_TAG v3.8.0)
207-
else()
208-
SET(PROTOBUF_REPOSITORY ${GIT_URL}/protocolbuffers/protobuf.git)
209-
SET(PROTOBUF_TAG 9f75c5aa851cd877fb0d93ccc31b8567a6706546)
210-
endif()
201+
if(WITH_ASCEND AND NOT WITH_ASCEND_CXX11)
202+
SET(PROTOBUF_REPOSITORY https://gitee.com/tianjianhe/protobuf.git)
203+
SET(PROTOBUF_TAG v3.8.0)
204+
elseif(WITH_ASCEND_CL AND NOT WITH_ASCEND_CXX11)
205+
SET(PROTOBUF_REPOSITORY https://gitee.com/tianjianhe/protobuf.git)
206+
SET(PROTOBUF_TAG v3.8.0)
207+
else()
208+
SET(PROTOBUF_REPOSITORY ${GIT_URL}/protocolbuffers/protobuf.git)
209+
SET(PROTOBUF_TAG 9f75c5aa851cd877fb0d93ccc31b8567a6706546)
210+
endif()
211211

212212
cache_third_party(${TARGET_NAME}
213213
REPOSITORY ${PROTOBUF_REPOSITORY}

cmake/external/pybind11.cmake

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ ExternalProject_Add(
3939
# to be modified without triggering incremental compilation, and the
4040
# third-party library version changes cannot be incorporated.
4141
# reference: https://cmake.org/cmake/help/latest/module/ExternalProject.html
42+
UPDATE_COMMAND ""
4243
CONFIGURE_COMMAND ""
4344
BUILD_COMMAND ""
4445
INSTALL_COMMAND ""

cmake/external/xpu.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ ELSE ()
3535
ENDIF()
3636

3737
SET(XPU_BASE_URL_WITHOUT_DATE "https://baidu-kunlun-product.cdn.bcebos.com/KL-SDK/klsdk-dev")
38-
SET(XPU_BASE_URL "${XPU_BASE_URL_WITHOUT_DATE}/20210701")
38+
SET(XPU_BASE_URL "${XPU_BASE_URL_WITHOUT_DATE}/20210804")
3939
SET(XPU_XRE_URL "${XPU_BASE_URL}/${XPU_XRE_DIR_NAME}.tar.gz" CACHE STRING "" FORCE)
4040
SET(XPU_XDNN_URL "${XPU_BASE_URL}/${XPU_XDNN_DIR_NAME}.tar.gz" CACHE STRING "" FORCE)
4141
SET(XPU_XCCL_URL "${XPU_BASE_URL_WITHOUT_DATE}/20210623/${XPU_XCCL_DIR_NAME}.tar.gz" CACHE STRING "" FORCE)

cmake/generic.cmake

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -932,12 +932,8 @@ function(generate_dummy_static_lib)
932932
if(NOT dummy_GENERATOR)
933933
message(FATAL_ERROR "You must provide a generator file name.")
934934
endif()
935-
# if ${dummy_GENERATOR} contains "/", it may be a file path
936-
if(NOT ${dummy_GENERATOR} MATCHES ".*/.*")
937-
set(dummy_GENERATOR "${CMAKE_CURRENT_LIST_DIR}/${dummy_GENERATOR}")
938-
endif()
939935
if(NOT dummy_CONTENT)
940-
set(dummy_CONTENT "${dummy_FILE_PATH} for lib ${dummy_LIB_NAME}")
936+
set(dummy_CONTENT "${dummy_LIB_NAME}_dummy.c for lib ${dummy_LIB_NAME}")
941937
endif()
942938

943939
configure_file(${PROJECT_SOURCE_DIR}/cmake/dummy.c.in ${dummy_FILE_PATH} @ONLY)

cmake/inference_lib.cmake

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,6 +205,9 @@ copy(inference_lib_dist
205205
copy(inference_lib_dist
206206
SRCS ${PADDLE_SOURCE_DIR}/paddle/fluid/platform/float16.h
207207
DSTS ${PADDLE_INFERENCE_INSTALL_DIR}/paddle/include/experimental/)
208+
copy(inference_lib_dist
209+
SRCS ${PADDLE_SOURCE_DIR}/paddle/utils/any.h
210+
DSTS ${PADDLE_INFERENCE_INSTALL_DIR}/paddle/include/experimental/)
208211

209212
# CAPI inference library for only inference
210213
set(PADDLE_INFERENCE_C_INSTALL_DIR "${CMAKE_BINARY_DIR}/paddle_inference_c_install_dir" CACHE STRING

cmake/unity_build.cmake

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,14 @@ function(compose_unity_target_sources TARGET TYPE)
7777
get_property(unity_group_index_max GLOBAL PROPERTY ${TARGET}_${TYPE}_group_index)
7878
foreach(src ${ARGN})
7979
set(unity_file "")
80-
# UB use absolute path of source.
80+
# Note(zhouwei25): UB use the path releative to CMAKE_SOURCE_DIR.
81+
# If use absolute path, sccache/ccache hit rate will be reduced.
8182
if(IS_ABSOLUTE ${src})
8283
set(src_absolute_path ${src})
84+
file(RELATIVE_PATH src_relative_path ${CMAKE_SOURCE_DIR} ${src})
8385
else()
8486
set(src_absolute_path ${CMAKE_CURRENT_SOURCE_DIR}/${src})
87+
file(RELATIVE_PATH src_relative_path ${CMAKE_SOURCE_DIR} ${src_absolute_path})
8588
endif()
8689
# If `unity_group_index_max` is empty, there is no combination
8790
# relationship.
@@ -106,7 +109,7 @@ function(compose_unity_target_sources TARGET TYPE)
106109
set_property(GLOBAL APPEND PROPERTY ${unity_file_sources} ${UNITY_CU_BEFORE_CODE})
107110
endif()
108111
endif()
109-
set_property(GLOBAL APPEND PROPERTY ${unity_file_sources} "#include \"${src_absolute_path}\"")
112+
set_property(GLOBAL APPEND PROPERTY ${unity_file_sources} "#include \"${src_relative_path}\"")
110113
set(unity_target_sources ${unity_target_sources} ${unity_file})
111114
break()
112115
endif()

0 commit comments

Comments
 (0)