diff --git a/backends/trtllm/CMakeLists.txt b/backends/trtllm/CMakeLists.txt index 831372cdf..d33e9e8b1 100644 --- a/backends/trtllm/CMakeLists.txt +++ b/backends/trtllm/CMakeLists.txt @@ -13,7 +13,7 @@ if (CMAKE_VERSION VERSION_GREATER_EQUAL "3.24.0") endif () project(tgi-trtllm-backend VERSION 1.0.0) -set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD 23) include(FetchContent) include(ExternalProject) @@ -29,7 +29,6 @@ set(TGI_TRTLLM_BACKEND_TRT_LIB_DIR "${TGI_TRTLLM_BACKEND_TRT_ROOT}/lib" CACHE ST find_package(CUDAToolkit 12.6 REQUIRED COMPONENTS CUDA::cudart CUDA::nvml) #### External dependencies #### -include(cmake/fmt.cmake) include(cmake/json.cmake) include(cmake/spdlog.cmake) include(cmake/trtllm.cmake) @@ -41,15 +40,15 @@ add_subdirectory("${trtllm_SOURCE_DIR}/cpp" "${trtllm_SOURCE_DIR}/..") set_target_properties(executorWorker PROPERTIES SKIP_BUILD_RPATH TRUE) # TGI TRTLLM Backend definition -add_library(tgi_trtllm_backend_impl STATIC include/backend.h lib/backend.cpp include/hardware.h) +add_library(tgi_trtllm_backend_impl STATIC csrc/hardware.hpp csrc/backend.hpp csrc/backend.cpp) include_directories(${TGI_TRTLLM_BACKEND_TRT_INCLUDE_DIR}) target_include_directories(tgi_trtllm_backend_impl PRIVATE - $ - $ + $ +# $ ) target_include_directories(tgi_trtllm_backend_impl PUBLIC "${trtllm_SOURCE_DIR}/cpp/include") target_link_libraries(tgi_trtllm_backend_impl PRIVATE tensorrt_llm nvinfer_plugin_tensorrt_llm tensorrt_llm_nvrtc_wrapper CUDA::cudart CUDA::nvml) -target_link_libraries(tgi_trtllm_backend_impl PUBLIC nlohmann_json::nlohmann_json spdlog::spdlog fmt::fmt) +target_link_libraries(tgi_trtllm_backend_impl PUBLIC nlohmann_json::nlohmann_json spdlog::spdlog) # This install all the artifacts in CMAKE_INSTALL_PREFIX under include/ lib/ bin/ to make easy to link / find it back install(TARGETS tgi_trtllm_backend_impl tensorrt_llm nvinfer_plugin_tensorrt_llm decoder_attention executorWorker) @@ -60,16 +59,16 @@ if (${TGI_TRTLLM_BACKEND_BUILD_TESTS}) message(STATUS "Building tests") FetchContent_Declare( Catch2 - GIT_REPOSITORY https://github.com/catchorg/Catch2 - GIT_TAG v3.6.0 + URL https://github.com/catchorg/Catch2/archive/refs/tags/v3.7.1.tar.gz ) FetchContent_MakeAvailable(Catch2) - # add_executable(tgi_trtllm_backend_tests tests/infer_test.cpp) - # target_link_libraries(tgi_trtllm_backend_tests PRIVATE tgi_trtllm_backend_impl Catch2::Catch2WithMain nlohmann_json::nlohmann_json spdlog::spdlog fmt::fmt CUDA::cudart CUDA::nvml) + add_executable(tgi_trtllm_backend_tests tests/test_hardware.cpp) + target_link_libraries(tgi_trtllm_backend_tests PRIVATE CUDA::cudart CUDA::nvml) + target_link_libraries(tgi_trtllm_backend_tests PRIVATE Catch2::Catch2WithMain tensorrt_llm nlohmann_json::nlohmann_json spdlog::spdlog) list(APPEND CMAKE_MODULE_PATH ${catch2_SOURCE_DIR}/extras) include(CTest) include(Catch) - # catch_discover_tests(tgi_trtllm_backend_tests) + catch_discover_tests(tgi_trtllm_backend_tests) endif () diff --git a/backends/trtllm/cmake/fmt.cmake b/backends/trtllm/cmake/fmt.cmake deleted file mode 100644 index afd6ea5f0..000000000 --- a/backends/trtllm/cmake/fmt.cmake +++ /dev/null @@ -1,6 +0,0 @@ -FetchContent_Declare( - fmt - DOWNLOAD_EXTRACT_TIMESTAMP - URL https://github.com/fmtlib/fmt/archive/refs/tags/11.0.2.tar.gz -) -FetchContent_MakeAvailable(fmt) diff --git a/backends/trtllm/cmake/json.cmake b/backends/trtllm/cmake/json.cmake index 67eff2fe6..d6cdbe3aa 100644 --- a/backends/trtllm/cmake/json.cmake +++ b/backends/trtllm/cmake/json.cmake @@ -1,6 +1,6 @@ fetchcontent_declare( json - DOWNLOAD_EXTRACT_TIMESTAMP - URL https://github.com/nlohmann/json/releases/download/v3.11.3/json.tar.xz +# DOWNLOAD_EXTRACT_TIMESTAMP + URL https://github.com/nlohmann/json/archive/refs/tags/v3.11.3.tar.gz ) fetchcontent_makeavailable(json) diff --git a/backends/trtllm/cmake/spdlog.cmake b/backends/trtllm/cmake/spdlog.cmake index 7f529a7d2..45e6790a8 100644 --- a/backends/trtllm/cmake/spdlog.cmake +++ b/backends/trtllm/cmake/spdlog.cmake @@ -1,6 +1,6 @@ set(SPDLOG_USE_FMT ON) set(SPDLOG_BUILD_SHARED OFF) -set(SPDLOG_FMT_EXTERNAL ON) +set(SPDLOG_FMT_EXTERNAL OFF) # Define the level at which SPDLOG_ compilation level is defined if (${CMAKE_BUILD_TYPE} STREQUAL "Debug") @@ -11,7 +11,7 @@ endif () fetchcontent_declare( spdlog - DOWNLOAD_EXTRACT_TIMESTAMP +# DOWNLOAD_EXTRACT_TIMESTAMP URL https://github.com/gabime/spdlog/archive/refs/tags/v1.14.1.tar.gz ) fetchcontent_makeavailable(spdlog)