|
|
|
@ -83,14 +83,24 @@ if (USE_TENSORRT AND WITH_GPU)
|
|
|
|
|
endif()
|
|
|
|
|
set(TENSORRT_INCLUDE_DIR ${TENSORRT_ROOT}/include)
|
|
|
|
|
set(TENSORRT_LIB_DIR ${TENSORRT_ROOT}/lib)
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
if (NOT WIN32)
|
|
|
|
|
if (USE_TENSORRT AND WITH_GPU)
|
|
|
|
|
include_directories("${TENSORRT_INCLUDE_DIR}")
|
|
|
|
|
link_directories("${TENSORRT_LIB_DIR}")
|
|
|
|
|
file(READ ${TENSORRT_INCLUDE_DIR}/NvInfer.h TENSORRT_VERSION_FILE_CONTENTS)
|
|
|
|
|
string(REGEX MATCH "define NV_TENSORRT_MAJOR +([0-9]+)" TENSORRT_MAJOR_VERSION
|
|
|
|
|
"${TENSORRT_VERSION_FILE_CONTENTS}")
|
|
|
|
|
if("${TENSORRT_MAJOR_VERSION}" STREQUAL "")
|
|
|
|
|
file(READ ${TENSORRT_INCLUDE_DIR}/NvInferVersion.h TENSORRT_VERSION_FILE_CONTENTS)
|
|
|
|
|
string(REGEX MATCH "define NV_TENSORRT_MAJOR +([0-9]+)" TENSORRT_MAJOR_VERSION
|
|
|
|
|
"${TENSORRT_VERSION_FILE_CONTENTS}")
|
|
|
|
|
endif()
|
|
|
|
|
endif(NOT WIN32)
|
|
|
|
|
if("${TENSORRT_MAJOR_VERSION}" STREQUAL "")
|
|
|
|
|
message(SEND_ERROR "Failed to detect TensorRT version.")
|
|
|
|
|
endif()
|
|
|
|
|
string(REGEX REPLACE "define NV_TENSORRT_MAJOR +([0-9]+)" "\\1"
|
|
|
|
|
TENSORRT_MAJOR_VERSION "${TENSORRT_MAJOR_VERSION}")
|
|
|
|
|
message(STATUS "Current TensorRT header is ${TENSORRT_INCLUDE_DIR}/NvInfer.h. "
|
|
|
|
|
"Current TensorRT version is v${TENSORRT_MAJOR_VERSION}. ")
|
|
|
|
|
include_directories("${TENSORRT_INCLUDE_DIR}")
|
|
|
|
|
link_directories("${TENSORRT_LIB_DIR}")
|
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
|
if(WITH_MKL)
|
|
|
|
|
set(MATH_LIB_PATH "${PADDLE_LIB_THIRD_PARTY_PATH}mklml")
|
|
|
|
@ -147,14 +157,17 @@ endif(NOT WIN32)
|
|
|
|
|
if(WITH_GPU)
|
|
|
|
|
if(NOT WIN32)
|
|
|
|
|
if (USE_TENSORRT)
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/libnvinfer${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/libnvinfer_plugin${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/libnvinfer${CMAKE_SHARED_LIBRARY_SUFFIX})
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/libnvinfer_plugin${CMAKE_SHARED_LIBRARY_SUFFIX})
|
|
|
|
|
endif()
|
|
|
|
|
set(DEPS ${DEPS} ${CUDA_LIB}/libcudart${CMAKE_SHARED_LIBRARY_SUFFIX})
|
|
|
|
|
else()
|
|
|
|
|
if(USE_TENSORRT)
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/nvinfer${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/nvinfer_plugin${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
|
|
|
if(${TENSORRT_MAJOR_VERSION} GREATER_EQUAL 7)
|
|
|
|
|
set(DEPS ${DEPS} ${TENSORRT_LIB_DIR}/myelin64_1${CMAKE_STATIC_LIBRARY_SUFFIX})
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
set(DEPS ${DEPS} ${CUDA_LIB}/cudart${CMAKE_STATIC_LIBRARY_SUFFIX} )
|
|
|
|
|
set(DEPS ${DEPS} ${CUDA_LIB}/cublas${CMAKE_STATIC_LIBRARY_SUFFIX} )
|
|
|
|
@ -172,6 +185,11 @@ if(WIN32)
|
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${TENSORRT_LIB_DIR}/nvinfer_plugin${CMAKE_SHARED_LIBRARY_SUFFIX}
|
|
|
|
|
${CMAKE_BINARY_DIR}/${CMAKE_BUILD_TYPE}
|
|
|
|
|
)
|
|
|
|
|
if(${TENSORRT_MAJOR_VERSION} GREATER_EQUAL 7)
|
|
|
|
|
add_custom_command(TARGET ${DEMO_NAME} POST_BUILD
|
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy ${TENSORRT_LIB_DIR}/myelin64_1${CMAKE_SHARED_LIBRARY_SUFFIX}
|
|
|
|
|
${CMAKE_BINARY_DIR}/${CMAKE_BUILD_TYPE})
|
|
|
|
|
endif()
|
|
|
|
|
endif()
|
|
|
|
|
if(WITH_MKL)
|
|
|
|
|
add_custom_command(TARGET ${DEMO_NAME} POST_BUILD
|
|
|
|
|