mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
cmake: auto-detect ccache to speed up developer builds (#49389)
Summary: https://ccache.dev/ is a compiler cache that speeds up subsequent builds. Auto-detecting ccache ensures that it is used on systems where it is available, greatly improving build times for developers. There is no risk in enabling ccache in practice. Please refer to https://ccache.dev/ for a short summary / motivation Pull Request resolved: https://github.com/pytorch/pytorch/pull/49389 Reviewed By: ejguan Differential Revision: D27169957 Pulled By: malfet fbshipit-source-id: 673b60bbceb0d323901c8a992a75792c6da9b805
This commit is contained in:
committed by
Facebook GitHub Bot
parent
a95abc4648
commit
90bbe0b38b
@ -295,6 +295,19 @@ option(HAVE_SOVERSION "Whether to add SOVERSION to the shared objects" OFF)
|
||||
cmake_dependent_option(
|
||||
USE_DEPLOY "Build embedded torch::deploy interpreter" OFF
|
||||
"BUILD_PYTHON" OFF)
|
||||
cmake_dependent_option(USE_CCACHE "Attempt using CCache to wrap the compilation" ON "UNIX" OFF)
|
||||
|
||||
if(USE_CCACHE)
|
||||
find_program(CCACHE_PROGRAM ccache)
|
||||
if(CCACHE_PROGRAM)
|
||||
set(CMAKE_C_COMPILER_LAUNCHER "${CCACHE_PROGRAM}")
|
||||
set(CMAKE_CXX_COMPILER_LAUNCHER "${CCACHE_PROGRAM}")
|
||||
set(CMAKE_CUDA_COMPILER_LAUNCHER "${CCACHE_PROGRAM}")
|
||||
else()
|
||||
message(STATUS "Could not find ccache. Consider installing ccache to speed up compilation.")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Since TensorPipe does not support Windows, set it to OFF when WIN32 detected
|
||||
# On Windows platform, if user does not install libuv in build conda env and
|
||||
# does not set libuv_ROOT environment variable. Set USE_DISTRIBUTED to OFF.
|
||||
|
@ -9,6 +9,10 @@ function(caffe2_print_configuration_summary)
|
||||
message(STATUS " C++ compiler : ${CMAKE_CXX_COMPILER}")
|
||||
message(STATUS " C++ compiler id : ${CMAKE_CXX_COMPILER_ID}")
|
||||
message(STATUS " C++ compiler version : ${CMAKE_CXX_COMPILER_VERSION}")
|
||||
message(STATUS " Using ccache if found : ${USE_CCACHE}")
|
||||
if(USE_CCACHE)
|
||||
message(STATUS " Found ccache : ${CCACHE_PROGRAM}")
|
||||
endif()
|
||||
message(STATUS " CXX flags : ${CMAKE_CXX_FLAGS}")
|
||||
message(STATUS " Build type : ${CMAKE_BUILD_TYPE}")
|
||||
get_directory_property(tmp DIRECTORY ${PROJECT_SOURCE_DIR} COMPILE_DEFINITIONS)
|
||||
|
Reference in New Issue
Block a user