CMakeLists.txt 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
  2. set(TRT_LIB_DIR ${CMAKE_BINARY_DIR})
  3. set(TRT_OUT_DIR ${CMAKE_BINARY_DIR})
  4. set(TRT_VERSION "${TRT_MAJOR}.${TRT_MINOR}.${TRT_PATCH}" CACHE STRING "TensorRT project version")
  5. set(TRT_SOVERSION "${TRT_SO_MAJOR}" CACHE STRING "TensorRT library so version")
  6. message("Building for TensorRT version: ${TRT_VERSION}, library version: ${TRT_SOVERSION}")
  7. set(CMAKE_SKIP_BUILD_RPATH True)
  8. set(CMAKE_CXX_STANDARD 14)
  9. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  10. set(CMAKE_CXX_EXTENSIONS OFF)
  11. # Dependencies
  12. set(DEFAULT_CUDA_VERSION 10.2)
  13. set(DEFAULT_CUDNN_VERSION 8.0)
  14. set(DEFAULT_PROTOBUF_VERSION 3.0.0)
  15. set(DEFAULT_CUB_VERSION 1.8.0)
  16. # Dependency Version Resolution
  17. set(CUDA_VERSION ${DEFAULT_CUDA_VERSION})
  18. message(STATUS "CUDA version set to ${CUDA_VERSION}")
  19. set(CUDNN_VERSION ${DEFAULT_CUDNN_VERSION})
  20. message(STATUS "cuDNN version set to ${CUDNN_VERSION}")
  21. find_package(Threads REQUIRED)
  22. find_package(CUDA REQUIRED)
  23. include_directories(
  24. ${CUDA_INCLUDE_DIRS}
  25. ${CUDNN_ROOT_DIR}/include
  26. )
  27. find_library(CUDNN_LIB cudnn HINTS
  28. ${CUDA_TOOLKIT_ROOT_DIR} ${CUDNN_ROOT_DIR} PATH_SUFFIXES lib64 lib)
  29. find_library(CUBLAS_LIB cublas HINTS
  30. ${CUDA_TOOLKIT_ROOT_DIR} PATH_SUFFIXES lib64 lib lib/stubs)
  31. find_library(CUBLASLT_LIB cublasLt HINTS
  32. ${CUDA_TOOLKIT_ROOT_DIR} PATH_SUFFIXES lib64 lib lib/stubs)
  33. find_library(CUDART_LIB cudart HINTS ${CUDA_TOOLKIT_ROOT_DIR} PATH_SUFFIXES lib lib64)
  34. find_library(RT_LIB rt)
  35. set(CUDA_LIBRARIES ${CUDART_LIB})
  36. set(GPU_ARCHS 72)
  37. # Generate PTX for the last architecture in the list.
  38. list(GET GPU_ARCHS -1 LATEST_SM)
  39. set(GENCODES "${GENCODES} -gencode arch=compute_${LATEST_SM},code=compute_${LATEST_SM}")
  40. set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Xcompiler -Wno-deprecated-declarations")
  41. add_executable(trt_test inferutils.cpp sample.cpp)
  42. target_link_libraries(trt_test ${CUDA_LIBRARIES} nvinfer nvonnxparser stdc++fs)