Formatting cmake (to lowercase without space for if/elseif/else/endif) (#35521)

Summary:
Running commands:
```bash
shopt -s globstar

sed -e 's/IF (/if(/g' -e 's/IF(/if(/g' -e 's/if (/if(/g' -e 's/ELSE (/else(/g' -e 's/ELSE(/else(/g' -e 's/else (/else(/g' -e 's/ENDif(/endif(/g' -e 's/ELSEif(/elseif(/g' -i CMakeLists.txt
sed -e 's/IF (/if(/g' -e 's/IF(/if(/g' -e 's/if (/if(/g' -e 's/ELSE (/else(/g' -e 's/ELSE(/else(/g' -e 's/else (/else(/g' -e 's/ENDif(/endif(/g' -e 's/ELSEif(/elseif(/g' -i caffe2/**/CMakeLists.txt
sed -e 's/IF (/if(/g' -e 's/IF(/if(/g' -e 's/if (/if(/g' -e 's/ELSE (/else(/g' -e 's/ELSE(/else(/g' -e 's/else (/else(/g' -e 's/ENDif(/endif(/g' -e 's/ELSEif(/elseif(/g' -i torch/**/CMakeLists.txt
sed -e 's/IF (/if(/g' -e 's/IF(/if(/g' -e 's/if (/if(/g' -e 's/ELSE (/else(/g' -e 's/ELSE(/else(/g' -e 's/else (/else(/g' -e 's/ENDif(/endif(/g' -e 's/ELSEif(/elseif(/g' -i c10/**/CMakeLists.txt
sed -e 's/IF (/if(/g' -e 's/IF(/if(/g' -e 's/if (/if(/g' -e 's/ELSE (/else(/g' -e 's/ELSE(/else(/g' -e 's/else (/else(/g' -e 's/ENDif(/endif(/g' -e 's/ELSEif(/elseif(/g' -i cmake/**/*.cmake
sed -e 's/IF (/if(/g' -e 's/IF(/if(/g' -e 's/if (/if(/g' -e 's/ELSE (/else(/g' -e 's/ELSE(/else(/g' -e 's/else (/else(/g' -e 's/ENDif(/endif(/g' -e 's/ELSEif(/elseif(/g' -i cmake/**/*.cmake.in
```
We may further convert all the commands into lowercase according to the following issue: 77543bde41.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/35521

Differential Revision: D20704382

Pulled By: malfet

fbshipit-source-id: 42186b9b1660c34428ab7ceb8d3f7a0ced5d2e80
This commit is contained in:
peter
2020-03-27 14:22:35 -07:00
committed by Facebook GitHub Bot
parent 04a3345335
commit 45c9ed825a
47 changed files with 470 additions and 470 deletions

View File

@ -53,43 +53,43 @@ install(FILES ${CMAKE_BINARY_DIR}/caffe2/core/macros.h
# ---[ ATen specific # ---[ ATen specific
if(INTERN_BUILD_ATEN_OPS) if(INTERN_BUILD_ATEN_OPS)
IF(MSVC) if(MSVC)
SET(OPT_FLAG "/fp:strict ") SET(OPT_FLAG "/fp:strict ")
ELSE(MSVC) else(MSVC)
SET(OPT_FLAG "-O3 ") SET(OPT_FLAG "-O3 ")
IF("${CMAKE_BUILD_TYPE}" MATCHES "Debug") if("${CMAKE_BUILD_TYPE}" MATCHES "Debug")
SET(OPT_FLAG " ") SET(OPT_FLAG " ")
ENDIF() endif()
ENDIF(MSVC) endif(MSVC)
IF(C_AVX_FOUND) if(C_AVX_FOUND)
IF(MSVC) if(MSVC)
SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_LIST_DIR}/../aten/src/TH/vector/AVX.cpp PROPERTIES COMPILE_FLAGS "${OPT_FLAG}/arch:AVX ${CXX_AVX_FLAGS}") SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_LIST_DIR}/../aten/src/TH/vector/AVX.cpp PROPERTIES COMPILE_FLAGS "${OPT_FLAG}/arch:AVX ${CXX_AVX_FLAGS}")
ELSE(MSVC) else(MSVC)
SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_LIST_DIR}/../aten/src/TH/vector/AVX.cpp PROPERTIES COMPILE_FLAGS "${OPT_FLAG} ${CXX_AVX_FLAGS}") SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_LIST_DIR}/../aten/src/TH/vector/AVX.cpp PROPERTIES COMPILE_FLAGS "${OPT_FLAG} ${CXX_AVX_FLAGS}")
ENDIF(MSVC) endif(MSVC)
ENDIF(C_AVX_FOUND) endif(C_AVX_FOUND)
IF(NOT MSVC AND NOT "${CMAKE_C_COMPILER_ID}" MATCHES "Clang") if(NOT MSVC AND NOT "${CMAKE_C_COMPILER_ID}" MATCHES "Clang")
SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_LIST_DIR}/../aten/src/TH/THAllocator.cpp PROPERTIES COMPILE_FLAGS "-fno-openmp") SET_SOURCE_FILES_PROPERTIES(${CMAKE_CURRENT_LIST_DIR}/../aten/src/TH/THAllocator.cpp PROPERTIES COMPILE_FLAGS "-fno-openmp")
ENDIF() endif()
FILE(GLOB cpu_kernel_cpp_in "${CMAKE_CURRENT_LIST_DIR}/../aten/src/ATen/native/cpu/*.cpp" "${CMAKE_CURRENT_LIST_DIR}/../aten/src/ATen/native/quantized/cpu/kernels/*.cpp") FILE(GLOB cpu_kernel_cpp_in "${CMAKE_CURRENT_LIST_DIR}/../aten/src/ATen/native/cpu/*.cpp" "${CMAKE_CURRENT_LIST_DIR}/../aten/src/ATen/native/quantized/cpu/kernels/*.cpp")
LIST(APPEND CPU_CAPABILITY_NAMES "DEFAULT") LIST(APPEND CPU_CAPABILITY_NAMES "DEFAULT")
LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG}") LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG}")
IF(CXX_AVX_FOUND) if(CXX_AVX_FOUND)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DHAVE_AVX_CPU_DEFINITION") SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DHAVE_AVX_CPU_DEFINITION")
LIST(APPEND CPU_CAPABILITY_NAMES "AVX") LIST(APPEND CPU_CAPABILITY_NAMES "AVX")
IF(MSVC) if(MSVC)
LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG}/arch:AVX") LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG}/arch:AVX")
ELSE(MSVC) else(MSVC)
LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG} -mavx") LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG} -mavx")
ENDIF(MSVC) endif(MSVC)
ENDIF(CXX_AVX_FOUND) endif(CXX_AVX_FOUND)
IF(CXX_AVX2_FOUND) if(CXX_AVX2_FOUND)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DHAVE_AVX2_CPU_DEFINITION") SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DHAVE_AVX2_CPU_DEFINITION")
# Some versions of GCC pessimistically split unaligned load and store # Some versions of GCC pessimistically split unaligned load and store
@ -97,17 +97,17 @@ if (INTERN_BUILD_ATEN_OPS)
# new Intel and AMD processors so we disable it when compiling with AVX2. # new Intel and AMD processors so we disable it when compiling with AVX2.
# See https://stackoverflow.com/questions/52626726/why-doesnt-gcc-resolve-mm256-loadu-pd-as-single-vmovupd#tab-top # See https://stackoverflow.com/questions/52626726/why-doesnt-gcc-resolve-mm256-loadu-pd-as-single-vmovupd#tab-top
check_cxx_compiler_flag("-mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store" COMPILER_SUPPORTS_NO_AVX256_SPLIT) check_cxx_compiler_flag("-mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store" COMPILER_SUPPORTS_NO_AVX256_SPLIT)
IF(COMPILER_SUPPORTS_NO_AVX256_SPLIT) if(COMPILER_SUPPORTS_NO_AVX256_SPLIT)
SET(CPU_NO_AVX256_SPLIT_FLAGS "-mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store") SET(CPU_NO_AVX256_SPLIT_FLAGS "-mno-avx256-split-unaligned-load -mno-avx256-split-unaligned-store")
ENDIF(COMPILER_SUPPORTS_NO_AVX256_SPLIT) endif(COMPILER_SUPPORTS_NO_AVX256_SPLIT)
LIST(APPEND CPU_CAPABILITY_NAMES "AVX2") LIST(APPEND CPU_CAPABILITY_NAMES "AVX2")
IF(MSVC) if(MSVC)
LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG}/arch:AVX2") LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG}/arch:AVX2")
ELSE(MSVC) else(MSVC)
LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG} -mavx2 -mfma ${CPU_NO_AVX256_SPLIT_FLAGS}") LIST(APPEND CPU_CAPABILITY_FLAGS "${OPT_FLAG} -mavx2 -mfma ${CPU_NO_AVX256_SPLIT_FLAGS}")
ENDIF(MSVC) endif(MSVC)
ENDIF(CXX_AVX2_FOUND) endif(CXX_AVX2_FOUND)
list(LENGTH CPU_CAPABILITY_NAMES NUM_CPU_CAPABILITY_NAMES) list(LENGTH CPU_CAPABILITY_NAMES NUM_CPU_CAPABILITY_NAMES)
math(EXPR NUM_CPU_CAPABILITY_NAMES "${NUM_CPU_CAPABILITY_NAMES}-1") math(EXPR NUM_CPU_CAPABILITY_NAMES "${NUM_CPU_CAPABILITY_NAMES}-1")
@ -120,11 +120,11 @@ if (INTERN_BUILD_ATEN_OPS)
CONFIGURE_FILE(${IMPL} ${NEW_IMPL} COPYONLY) CONFIGURE_FILE(${IMPL} ${NEW_IMPL} COPYONLY)
SET(cpu_kernel_cpp ${NEW_IMPL} ${cpu_kernel_cpp}) # Create list of copies SET(cpu_kernel_cpp ${NEW_IMPL} ${cpu_kernel_cpp}) # Create list of copies
LIST(GET CPU_CAPABILITY_FLAGS ${i} FLAGS) LIST(GET CPU_CAPABILITY_FLAGS ${i} FLAGS)
IF(MSVC) if(MSVC)
SET(MACRO_FLAG "/DCPU_CAPABILITY=${CPU_CAPABILITY} /DCPU_CAPABILITY_${CPU_CAPABILITY}") SET(MACRO_FLAG "/DCPU_CAPABILITY=${CPU_CAPABILITY} /DCPU_CAPABILITY_${CPU_CAPABILITY}")
ELSE(MSVC) else(MSVC)
SET(MACRO_FLAG "-DCPU_CAPABILITY=${CPU_CAPABILITY} -DCPU_CAPABILITY_${CPU_CAPABILITY}") SET(MACRO_FLAG "-DCPU_CAPABILITY=${CPU_CAPABILITY} -DCPU_CAPABILITY_${CPU_CAPABILITY}")
ENDIF(MSVC) endif(MSVC)
SET_SOURCE_FILES_PROPERTIES(${NEW_IMPL} PROPERTIES COMPILE_FLAGS "${FLAGS} ${MACRO_FLAG}") SET_SOURCE_FILES_PROPERTIES(${NEW_IMPL} PROPERTIES COMPILE_FLAGS "${FLAGS} ${MACRO_FLAG}")
ENDFOREACH() ENDFOREACH()
ENDFOREACH() ENDFOREACH()

View File

@ -279,14 +279,14 @@ if(INTERN_BUILD_MOBILE AND NOT BUILD_CAFFE2_MOBILE AND (USE_QNNPACK OR USE_NNPAC
set(PTHREADPOOL_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/pthreadpool" CACHE STRING "pthreadpool source directory") set(PTHREADPOOL_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/pthreadpool" CACHE STRING "pthreadpool source directory")
endif() endif()
IF(NOT TARGET pthreadpool) if(NOT TARGET pthreadpool)
SET(PTHREADPOOL_BUILD_TESTS OFF CACHE BOOL "") SET(PTHREADPOOL_BUILD_TESTS OFF CACHE BOOL "")
SET(PTHREADPOOL_BUILD_BENCHMARKS OFF CACHE BOOL "") SET(PTHREADPOOL_BUILD_BENCHMARKS OFF CACHE BOOL "")
ADD_SUBDIRECTORY( ADD_SUBDIRECTORY(
"${PTHREADPOOL_SOURCE_DIR}" "${PTHREADPOOL_SOURCE_DIR}"
"${CONFU_DEPENDENCIES_BINARY_DIR}/pthreadpool" "${CONFU_DEPENDENCIES_BINARY_DIR}/pthreadpool"
EXCLUDE_FROM_ALL) EXCLUDE_FROM_ALL)
ENDIF() endif()
endif() endif()
# XNNPACK has not option of like QNNPACK_CUSTOM_THREADPOOL # XNNPACK has not option of like QNNPACK_CUSTOM_THREADPOOL
@ -299,14 +299,14 @@ if (USE_XNNPACK)
set(PTHREADPOOL_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/pthreadpool" CACHE STRING "pthreadpool source directory") set(PTHREADPOOL_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT}/pthreadpool" CACHE STRING "pthreadpool source directory")
endif() endif()
IF(NOT TARGET pthreadpool) if(NOT TARGET pthreadpool)
SET(PTHREADPOOL_BUILD_TESTS OFF CACHE BOOL "") SET(PTHREADPOOL_BUILD_TESTS OFF CACHE BOOL "")
SET(PTHREADPOOL_BUILD_BENCHMARKS OFF CACHE BOOL "") SET(PTHREADPOOL_BUILD_BENCHMARKS OFF CACHE BOOL "")
ADD_SUBDIRECTORY( ADD_SUBDIRECTORY(
"${PTHREADPOOL_SOURCE_DIR}" "${PTHREADPOOL_SOURCE_DIR}"
"${CONFU_DEPENDENCIES_BINARY_DIR}/pthreadpool" "${CONFU_DEPENDENCIES_BINARY_DIR}/pthreadpool"
EXCLUDE_FROM_ALL) EXCLUDE_FROM_ALL)
ENDIF() endif()
endif() endif()
# ---[ Caffe2 uses cpuinfo library in the thread pool # ---[ Caffe2 uses cpuinfo library in the thread pool
@ -885,24 +885,24 @@ if(USE_OPENMP)
SET(WITH_OPENMP ON CACHE BOOL "OpenMP support if available?") SET(WITH_OPENMP ON CACHE BOOL "OpenMP support if available?")
# macOS + GCC # macOS + GCC
IF (APPLE AND CMAKE_COMPILER_IS_GNUCC) if(APPLE AND CMAKE_COMPILER_IS_GNUCC)
EXEC_PROGRAM (uname ARGS -v OUTPUT_VARIABLE DARWIN_VERSION) EXEC_PROGRAM (uname ARGS -v OUTPUT_VARIABLE DARWIN_VERSION)
STRING (REGEX MATCH "[0-9]+" DARWIN_VERSION ${DARWIN_VERSION}) STRING (REGEX MATCH "[0-9]+" DARWIN_VERSION ${DARWIN_VERSION})
MESSAGE (STATUS "macOS Darwin version: ${DARWIN_VERSION}") MESSAGE (STATUS "macOS Darwin version: ${DARWIN_VERSION}")
IF (DARWIN_VERSION GREATER 9) if(DARWIN_VERSION GREATER 9)
SET(APPLE_OPENMP_SUCKS 1) SET(APPLE_OPENMP_SUCKS 1)
ENDIF (DARWIN_VERSION GREATER 9) endif(DARWIN_VERSION GREATER 9)
EXECUTE_PROCESS (COMMAND ${CMAKE_C_COMPILER} -dumpversion EXECUTE_PROCESS (COMMAND ${CMAKE_C_COMPILER} -dumpversion
OUTPUT_VARIABLE GCC_VERSION) OUTPUT_VARIABLE GCC_VERSION)
IF (APPLE_OPENMP_SUCKS AND GCC_VERSION VERSION_LESS 4.6.2) if(APPLE_OPENMP_SUCKS AND GCC_VERSION VERSION_LESS 4.6.2)
MESSAGE(WARNING "Disabling OpenMP (unstable with this version of GCC). " MESSAGE(WARNING "Disabling OpenMP (unstable with this version of GCC). "
"Install GCC >= 4.6.2 or change your OS to enable OpenMP.") "Install GCC >= 4.6.2 or change your OS to enable OpenMP.")
add_compile_options(-Wno-unknown-pragmas) add_compile_options(-Wno-unknown-pragmas)
SET(WITH_OPENMP OFF CACHE BOOL "OpenMP support if available?" FORCE) SET(WITH_OPENMP OFF CACHE BOOL "OpenMP support if available?" FORCE)
ENDIF() endif()
ENDIF() endif()
IF("${CMAKE_CXX_SIMULATE_ID}" STREQUAL "MSVC" if("${CMAKE_CXX_SIMULATE_ID}" STREQUAL "MSVC"
AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") AND "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
MESSAGE(STATUS "Setting OpenMP flags for clang-cl") MESSAGE(STATUS "Setting OpenMP flags for clang-cl")
SET(OpenMP_CXX_FLAGS "-Xclang -fopenmp") SET(OpenMP_CXX_FLAGS "-Xclang -fopenmp")
@ -926,24 +926,24 @@ if(USE_OPENMP)
LIST(APPEND Caffe2_PUBLIC_DEPENDENCY_LIBS caffe2::openmp) LIST(APPEND Caffe2_PUBLIC_DEPENDENCY_LIBS caffe2::openmp)
endif() endif()
ENDIF() endif()
IF (WITH_OPENMP AND NOT CHECKED_OPENMP) if(WITH_OPENMP AND NOT CHECKED_OPENMP)
FIND_PACKAGE(OpenMP QUIET) FIND_PACKAGE(OpenMP QUIET)
SET(CHECKED_OPENMP ON CACHE BOOL "already checked for OpenMP") SET(CHECKED_OPENMP ON CACHE BOOL "already checked for OpenMP")
# OPENMP_FOUND is not cached in FindOpenMP.cmake (all other variables are cached) # OPENMP_FOUND is not cached in FindOpenMP.cmake (all other variables are cached)
# see https://github.com/Kitware/CMake/blob/master/Modules/FindOpenMP.cmake # see https://github.com/Kitware/CMake/blob/master/Modules/FindOpenMP.cmake
SET(OPENMP_FOUND ${OPENMP_FOUND} CACHE BOOL "OpenMP Support found") SET(OPENMP_FOUND ${OPENMP_FOUND} CACHE BOOL "OpenMP Support found")
ENDIF() endif()
if(OPENMP_FOUND) if(OPENMP_FOUND)
message(STATUS "Adding OpenMP CXX_FLAGS: " ${OpenMP_CXX_FLAGS}) message(STATUS "Adding OpenMP CXX_FLAGS: " ${OpenMP_CXX_FLAGS})
IF("${OpenMP_CXX_LIBRARIES}" STREQUAL "") if("${OpenMP_CXX_LIBRARIES}" STREQUAL "")
message(STATUS "No OpenMP library needs to be linked against") message(STATUS "No OpenMP library needs to be linked against")
ELSE() else()
message(STATUS "Will link against OpenMP libraries: ${OpenMP_CXX_LIBRARIES}") message(STATUS "Will link against OpenMP libraries: ${OpenMP_CXX_LIBRARIES}")
ENDIF() endif()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
else() else()
@ -1290,21 +1290,21 @@ if (NOT INTERN_BUILD_MOBILE)
# this, but since FindCUDA upstream is subsumed by first-class support # this, but since FindCUDA upstream is subsumed by first-class support
# for CUDA language, it seemed not worth fixing. # for CUDA language, it seemed not worth fixing.
IF (MSVC) if(MSVC)
# we want to respect the standard, and we are bored of those **** . # we want to respect the standard, and we are bored of those **** .
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE=1) ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE=1)
# skip unwanted includes from windows.h # skip unwanted includes from windows.h
ADD_DEFINITIONS(-DWIN32_LEAN_AND_MEAN) ADD_DEFINITIONS(-DWIN32_LEAN_AND_MEAN)
LIST(APPEND CUDA_NVCC_FLAGS "-Xcompiler /wd4819 -Xcompiler /wd4503 -Xcompiler /wd4190 -Xcompiler /wd4244 -Xcompiler /wd4251 -Xcompiler /wd4275 -Xcompiler /wd4522") LIST(APPEND CUDA_NVCC_FLAGS "-Xcompiler /wd4819 -Xcompiler /wd4503 -Xcompiler /wd4190 -Xcompiler /wd4244 -Xcompiler /wd4251 -Xcompiler /wd4275 -Xcompiler /wd4522")
ENDIF() endif()
IF (NOT MSVC) if(NOT MSVC)
IF (CMAKE_VERSION VERSION_LESS "3.1") if(CMAKE_VERSION VERSION_LESS "3.1")
SET(CMAKE_C_FLAGS "-std=c11 ${CMAKE_C_FLAGS}") SET(CMAKE_C_FLAGS "-std=c11 ${CMAKE_C_FLAGS}")
ELSE () else()
SET(CMAKE_C_STANDARD 11) SET(CMAKE_C_STANDARD 11)
ENDIF () endif()
ENDIF() endif()
LIST(APPEND CUDA_NVCC_FLAGS -Wno-deprecated-gpu-targets) LIST(APPEND CUDA_NVCC_FLAGS -Wno-deprecated-gpu-targets)
LIST(APPEND CUDA_NVCC_FLAGS --expt-extended-lambda) LIST(APPEND CUDA_NVCC_FLAGS --expt-extended-lambda)
@ -1315,38 +1315,38 @@ if (NOT INTERN_BUILD_MOBILE)
LIST(APPEND CUDA_NVCC_FLAGS ${TORCH_NVCC_FLAGS}) LIST(APPEND CUDA_NVCC_FLAGS ${TORCH_NVCC_FLAGS})
LIST(APPEND CUDA_NVCC_FLAGS ${NVCC_FLAGS_EXTRA}) LIST(APPEND CUDA_NVCC_FLAGS ${NVCC_FLAGS_EXTRA})
IF (CMAKE_POSITION_INDEPENDENT_CODE AND NOT MSVC) if(CMAKE_POSITION_INDEPENDENT_CODE AND NOT MSVC)
LIST(APPEND CUDA_NVCC_FLAGS "-Xcompiler" "-fPIC") LIST(APPEND CUDA_NVCC_FLAGS "-Xcompiler" "-fPIC")
ENDIF() endif()
IF (CUDA_HAS_FP16 OR NOT ${CUDA_VERSION} LESS 7.5) if(CUDA_HAS_FP16 OR NOT ${CUDA_VERSION} LESS 7.5)
MESSAGE(STATUS "Found CUDA with FP16 support, compiling with torch.cuda.HalfTensor") MESSAGE(STATUS "Found CUDA with FP16 support, compiling with torch.cuda.HalfTensor")
LIST(APPEND CUDA_NVCC_FLAGS "-DCUDA_HAS_FP16=1 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__") LIST(APPEND CUDA_NVCC_FLAGS "-DCUDA_HAS_FP16=1 -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__")
add_compile_options(-DCUDA_HAS_FP16=1) add_compile_options(-DCUDA_HAS_FP16=1)
ELSE() else()
MESSAGE(STATUS "Could not find CUDA with FP16 support, compiling without torch.CudaHalfTensor") MESSAGE(STATUS "Could not find CUDA with FP16 support, compiling without torch.CudaHalfTensor")
ENDIF() endif()
STRING(APPEND CMAKE_C_FLAGS_RELEASE " -DNDEBUG") STRING(APPEND CMAKE_C_FLAGS_RELEASE " -DNDEBUG")
STRING(APPEND CMAKE_CXX_FLAGS_RELEASE " -DNDEBUG") STRING(APPEND CMAKE_CXX_FLAGS_RELEASE " -DNDEBUG")
IF (NOT GENERATOR_IS_MULTI_CONFIG) if(NOT GENERATOR_IS_MULTI_CONFIG)
IF (${CMAKE_BUILD_TYPE} STREQUAL "Release") if(${CMAKE_BUILD_TYPE} STREQUAL "Release")
MESSAGE(STATUS "Adding -DNDEBUG to compile flags") MESSAGE(STATUS "Adding -DNDEBUG to compile flags")
STRING(APPEND CMAKE_C_FLAGS " -DNDEBUG") STRING(APPEND CMAKE_C_FLAGS " -DNDEBUG")
STRING(APPEND CMAKE_CXX_FLAGS " -DNDEBUG") STRING(APPEND CMAKE_CXX_FLAGS " -DNDEBUG")
ELSE() else()
MESSAGE(STATUS "Removing -DNDEBUG from compile flags") MESSAGE(STATUS "Removing -DNDEBUG from compile flags")
STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_C_FLAGS "" ${CMAKE_C_FLAGS}) STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_C_FLAGS "" ${CMAKE_C_FLAGS})
STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_CXX_FLAGS "" ${CMAKE_CXX_FLAGS}) STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_CXX_FLAGS "" ${CMAKE_CXX_FLAGS})
ENDIF() endif()
ENDIF() endif()
STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_C_FLAGS_DEBUG "" ${CMAKE_C_FLAGS_DEBUG}) STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_C_FLAGS_DEBUG "" ${CMAKE_C_FLAGS_DEBUG})
STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_CXX_FLAGS_DEBUG "" ${CMAKE_CXX_FLAGS_DEBUG}) STRING(REGEX REPLACE "[-/]DNDEBUG" "" CMAKE_CXX_FLAGS_DEBUG "" ${CMAKE_CXX_FLAGS_DEBUG})
SET(CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE OFF) SET(CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE OFF)
FIND_PACKAGE(MAGMA) FIND_PACKAGE(MAGMA)
IF (USE_CUDA AND MAGMA_FOUND) if(USE_CUDA AND MAGMA_FOUND)
INCLUDE_DIRECTORIES(SYSTEM ${MAGMA_INCLUDE_DIR}) INCLUDE_DIRECTORIES(SYSTEM ${MAGMA_INCLUDE_DIR})
SET(CMAKE_REQUIRED_INCLUDES "${MAGMA_INCLUDE_DIR};${CUDA_INCLUDE_DIRS}") SET(CMAKE_REQUIRED_INCLUDES "${MAGMA_INCLUDE_DIR};${CUDA_INCLUDE_DIRS}")
INCLUDE(CheckPrototypeDefinition) INCLUDE(CheckPrototypeDefinition)
@ -1355,50 +1355,50 @@ if (NOT INTERN_BUILD_MOBILE)
"0" "0"
"magma.h" "magma.h"
MAGMA_V2) MAGMA_V2)
IF (MAGMA_V2) if(MAGMA_V2)
add_definitions(-DMAGMA_V2) add_definitions(-DMAGMA_V2)
ENDIF (MAGMA_V2) endif(MAGMA_V2)
SET(USE_MAGMA 1) SET(USE_MAGMA 1)
MESSAGE(STATUS "Compiling with MAGMA support") MESSAGE(STATUS "Compiling with MAGMA support")
MESSAGE(STATUS "MAGMA INCLUDE DIRECTORIES: ${MAGMA_INCLUDE_DIR}") MESSAGE(STATUS "MAGMA INCLUDE DIRECTORIES: ${MAGMA_INCLUDE_DIR}")
MESSAGE(STATUS "MAGMA LIBRARIES: ${MAGMA_LIBRARIES}") MESSAGE(STATUS "MAGMA LIBRARIES: ${MAGMA_LIBRARIES}")
MESSAGE(STATUS "MAGMA V2 check: ${MAGMA_V2}") MESSAGE(STATUS "MAGMA V2 check: ${MAGMA_V2}")
ELSE() else()
MESSAGE(STATUS "MAGMA not found. Compiling without MAGMA support") MESSAGE(STATUS "MAGMA not found. Compiling without MAGMA support")
ENDIF() endif()
# ARM specific flags # ARM specific flags
FIND_PACKAGE(ARM) FIND_PACKAGE(ARM)
IF (ASIMD_FOUND) if(ASIMD_FOUND)
MESSAGE(STATUS "asimd/Neon found with compiler flag : -D__NEON__") MESSAGE(STATUS "asimd/Neon found with compiler flag : -D__NEON__")
add_compile_options(-D__NEON__) add_compile_options(-D__NEON__)
ELSEIF (NEON_FOUND) elseif(NEON_FOUND)
MESSAGE(STATUS "Neon found with compiler flag : -mfpu=neon -D__NEON__") MESSAGE(STATUS "Neon found with compiler flag : -mfpu=neon -D__NEON__")
add_compile_options(-mfpu=neon -D__NEON__) add_compile_options(-mfpu=neon -D__NEON__)
ENDIF () endif()
IF (CORTEXA8_FOUND) if(CORTEXA8_FOUND)
MESSAGE(STATUS "Cortex-A8 Found with compiler flag : -mcpu=cortex-a8") MESSAGE(STATUS "Cortex-A8 Found with compiler flag : -mcpu=cortex-a8")
add_compile_options(-mcpu=cortex-a8 -fprefetch-loop-arrays) add_compile_options(-mcpu=cortex-a8 -fprefetch-loop-arrays)
ENDIF () endif()
IF (CORTEXA9_FOUND) if(CORTEXA9_FOUND)
MESSAGE(STATUS "Cortex-A9 Found with compiler flag : -mcpu=cortex-a9") MESSAGE(STATUS "Cortex-A9 Found with compiler flag : -mcpu=cortex-a9")
add_compile_options(-mcpu=cortex-a9) add_compile_options(-mcpu=cortex-a9)
ENDIF() endif()
CHECK_INCLUDE_FILE(cpuid.h HAVE_CPUID_H) CHECK_INCLUDE_FILE(cpuid.h HAVE_CPUID_H)
# Check for a cpuid intrinsic # Check for a cpuid intrinsic
IF (HAVE_CPUID_H) if(HAVE_CPUID_H)
CHECK_C_SOURCE_COMPILES("#include <cpuid.h> CHECK_C_SOURCE_COMPILES("#include <cpuid.h>
int main() int main()
{ {
unsigned int eax, ebx, ecx, edx; unsigned int eax, ebx, ecx, edx;
return __get_cpuid(0, &eax, &ebx, &ecx, &edx); return __get_cpuid(0, &eax, &ebx, &ecx, &edx);
}" HAVE_GCC_GET_CPUID) }" HAVE_GCC_GET_CPUID)
ENDIF() endif()
IF (HAVE_GCC_GET_CPUID) if(HAVE_GCC_GET_CPUID)
add_compile_options(-DHAVE_GCC_GET_CPUID) add_compile_options(-DHAVE_GCC_GET_CPUID)
ENDIF() endif()
CHECK_C_SOURCE_COMPILES("#include <stdint.h> CHECK_C_SOURCE_COMPILES("#include <stdint.h>
static inline void cpuid(uint32_t *eax, uint32_t *ebx, static inline void cpuid(uint32_t *eax, uint32_t *ebx,
@ -1414,33 +1414,33 @@ if (NOT INTERN_BUILD_MOBILE)
return 0; return 0;
}" NO_GCC_EBX_FPIC_BUG) }" NO_GCC_EBX_FPIC_BUG)
IF (NOT NO_GCC_EBX_FPIC_BUG) if(NOT NO_GCC_EBX_FPIC_BUG)
add_compile_options(-DUSE_GCC_GET_CPUID) add_compile_options(-DUSE_GCC_GET_CPUID)
ENDIF() endif()
FIND_PACKAGE(AVX) # checks AVX and AVX2 FIND_PACKAGE(AVX) # checks AVX and AVX2
# we don't set -mavx and -mavx2 flags globally, but only for specific files # we don't set -mavx and -mavx2 flags globally, but only for specific files
# however, we want to enable the AVX codepaths, so we still need to # however, we want to enable the AVX codepaths, so we still need to
# add USE_AVX and USE_AVX2 macro defines # add USE_AVX and USE_AVX2 macro defines
IF (C_AVX_FOUND) if(C_AVX_FOUND)
MESSAGE(STATUS "AVX compiler support found") MESSAGE(STATUS "AVX compiler support found")
add_compile_options(-DUSE_AVX) add_compile_options(-DUSE_AVX)
ENDIF() endif()
IF (C_AVX2_FOUND) if(C_AVX2_FOUND)
MESSAGE(STATUS "AVX2 compiler support found") MESSAGE(STATUS "AVX2 compiler support found")
add_compile_options(-DUSE_AVX2) add_compile_options(-DUSE_AVX2)
ENDIF() endif()
IF (WIN32 AND NOT CYGWIN) if(WIN32 AND NOT CYGWIN)
SET(BLAS_INSTALL_LIBRARIES "OFF" SET(BLAS_INSTALL_LIBRARIES "OFF"
CACHE BOOL "Copy the required BLAS DLLs into the TH install dirs") CACHE BOOL "Copy the required BLAS DLLs into the TH install dirs")
ENDIF() endif()
FIND_PACKAGE(LAPACK) FIND_PACKAGE(LAPACK)
IF (LAPACK_FOUND) if(LAPACK_FOUND)
SET(USE_LAPACK 1) SET(USE_LAPACK 1)
ENDIF() endif()
if(NOT USE_CUDA) if(NOT USE_CUDA)
message("disabling CUDA because NOT USE_CUDA is set") message("disabling CUDA because NOT USE_CUDA is set")
@ -1449,89 +1449,89 @@ if (NOT INTERN_BUILD_MOBILE)
SET(AT_CUDA_ENABLED 1) SET(AT_CUDA_ENABLED 1)
endif() endif()
IF (NOT USE_CUDNN) if(NOT USE_CUDNN)
MESSAGE(STATUS "USE_CUDNN is set to 0. Compiling without cuDNN support") MESSAGE(STATUS "USE_CUDNN is set to 0. Compiling without cuDNN support")
set(AT_CUDNN_ENABLED 0) set(AT_CUDNN_ENABLED 0)
ELSEIF (NOT CUDNN_FOUND) elseif(NOT CUDNN_FOUND)
MESSAGE(WARNING "CuDNN not found. Compiling without CuDNN support") MESSAGE(WARNING "CuDNN not found. Compiling without CuDNN support")
set(AT_CUDNN_ENABLED 0) set(AT_CUDNN_ENABLED 0)
ELSE() else()
include_directories(SYSTEM ${CUDNN_INCLUDE_PATH}) include_directories(SYSTEM ${CUDNN_INCLUDE_PATH})
set(AT_CUDNN_ENABLED 1) set(AT_CUDNN_ENABLED 1)
ENDIF() endif()
IF (NOT USE_ROCM) if(NOT USE_ROCM)
message("disabling ROCM because NOT USE_ROCM is set") message("disabling ROCM because NOT USE_ROCM is set")
MESSAGE(STATUS "MIOpen not found. Compiling without MIOpen support") MESSAGE(STATUS "MIOpen not found. Compiling without MIOpen support")
set(AT_ROCM_ENABLED 0) set(AT_ROCM_ENABLED 0)
ELSE() else()
INCLUDE_DIRECTORIES(BEFORE ${MIOPEN_INCLUDE_DIRS}) INCLUDE_DIRECTORIES(BEFORE ${MIOPEN_INCLUDE_DIRS})
set(AT_ROCM_ENABLED 1) set(AT_ROCM_ENABLED 1)
ENDIF() endif()
SET(AT_MKLDNN_ENABLED 0) SET(AT_MKLDNN_ENABLED 0)
SET(CAFFE2_USE_MKLDNN OFF) SET(CAFFE2_USE_MKLDNN OFF)
IF (USE_MKLDNN) if(USE_MKLDNN)
INCLUDE(${CMAKE_CURRENT_LIST_DIR}/public/mkldnn.cmake) INCLUDE(${CMAKE_CURRENT_LIST_DIR}/public/mkldnn.cmake)
IF(MKLDNN_FOUND) if(MKLDNN_FOUND)
SET(AT_MKLDNN_ENABLED 1) SET(AT_MKLDNN_ENABLED 1)
INCLUDE_DIRECTORIES(AFTER SYSTEM ${MKLDNN_INCLUDE_DIR}) INCLUDE_DIRECTORIES(AFTER SYSTEM ${MKLDNN_INCLUDE_DIR})
IF(BUILD_CAFFE2_OPS) if(BUILD_CAFFE2_OPS)
SET(CAFFE2_USE_MKLDNN ON) SET(CAFFE2_USE_MKLDNN ON)
LIST(APPEND Caffe2_PUBLIC_DEPENDENCY_LIBS caffe2::mkldnn) LIST(APPEND Caffe2_PUBLIC_DEPENDENCY_LIBS caffe2::mkldnn)
ENDIF(BUILD_CAFFE2_OPS) endif(BUILD_CAFFE2_OPS)
ELSE() else()
MESSAGE(WARNING "MKLDNN could not be found.") MESSAGE(WARNING "MKLDNN could not be found.")
ENDIF() endif()
ELSE() else()
MESSAGE("disabling MKLDNN because USE_MKLDNN is not set") MESSAGE("disabling MKLDNN because USE_MKLDNN is not set")
ENDIF() endif()
IF(UNIX AND NOT APPLE) if(UNIX AND NOT APPLE)
INCLUDE(CheckLibraryExists) INCLUDE(CheckLibraryExists)
# https://github.com/libgit2/libgit2/issues/2128#issuecomment-35649830 # https://github.com/libgit2/libgit2/issues/2128#issuecomment-35649830
CHECK_LIBRARY_EXISTS(rt clock_gettime "time.h" NEED_LIBRT) CHECK_LIBRARY_EXISTS(rt clock_gettime "time.h" NEED_LIBRT)
IF(NEED_LIBRT) if(NEED_LIBRT)
list(APPEND Caffe2_DEPENDENCY_LIBS rt) list(APPEND Caffe2_DEPENDENCY_LIBS rt)
SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} rt) SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} rt)
ENDIF(NEED_LIBRT) endif(NEED_LIBRT)
ENDIF(UNIX AND NOT APPLE) endif(UNIX AND NOT APPLE)
IF(UNIX) if(UNIX)
SET(CMAKE_EXTRA_INCLUDE_FILES "sys/mman.h") SET(CMAKE_EXTRA_INCLUDE_FILES "sys/mman.h")
CHECK_FUNCTION_EXISTS(mmap HAVE_MMAP) CHECK_FUNCTION_EXISTS(mmap HAVE_MMAP)
IF(HAVE_MMAP) if(HAVE_MMAP)
ADD_DEFINITIONS(-DHAVE_MMAP=1) ADD_DEFINITIONS(-DHAVE_MMAP=1)
ENDIF(HAVE_MMAP) endif(HAVE_MMAP)
# done for lseek: https://www.gnu.org/software/libc/manual/html_node/File-Position-Primitive.html # done for lseek: https://www.gnu.org/software/libc/manual/html_node/File-Position-Primitive.html
ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64) ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64)
CHECK_FUNCTION_EXISTS(shm_open HAVE_SHM_OPEN) CHECK_FUNCTION_EXISTS(shm_open HAVE_SHM_OPEN)
IF(HAVE_SHM_OPEN) if(HAVE_SHM_OPEN)
ADD_DEFINITIONS(-DHAVE_SHM_OPEN=1) ADD_DEFINITIONS(-DHAVE_SHM_OPEN=1)
ENDIF(HAVE_SHM_OPEN) endif(HAVE_SHM_OPEN)
CHECK_FUNCTION_EXISTS(shm_unlink HAVE_SHM_UNLINK) CHECK_FUNCTION_EXISTS(shm_unlink HAVE_SHM_UNLINK)
IF(HAVE_SHM_UNLINK) if(HAVE_SHM_UNLINK)
ADD_DEFINITIONS(-DHAVE_SHM_UNLINK=1) ADD_DEFINITIONS(-DHAVE_SHM_UNLINK=1)
ENDIF(HAVE_SHM_UNLINK) endif(HAVE_SHM_UNLINK)
CHECK_FUNCTION_EXISTS(malloc_usable_size HAVE_MALLOC_USABLE_SIZE) CHECK_FUNCTION_EXISTS(malloc_usable_size HAVE_MALLOC_USABLE_SIZE)
IF(HAVE_MALLOC_USABLE_SIZE) if(HAVE_MALLOC_USABLE_SIZE)
ADD_DEFINITIONS(-DHAVE_MALLOC_USABLE_SIZE=1) ADD_DEFINITIONS(-DHAVE_MALLOC_USABLE_SIZE=1)
ENDIF(HAVE_MALLOC_USABLE_SIZE) endif(HAVE_MALLOC_USABLE_SIZE)
ENDIF(UNIX) endif(UNIX)
ADD_DEFINITIONS(-DMINIZ_DISABLE_ZIP_READER_CRC32_CHECKS) ADD_DEFINITIONS(-DMINIZ_DISABLE_ZIP_READER_CRC32_CHECKS)
# Is __thread supported? # Is __thread supported?
IF(NOT MSVC) if(NOT MSVC)
CHECK_C_SOURCE_COMPILES("static __thread int x = 1; int main() { return x; }" C_HAS_THREAD) CHECK_C_SOURCE_COMPILES("static __thread int x = 1; int main() { return x; }" C_HAS_THREAD)
ELSE(NOT MSVC) else(NOT MSVC)
CHECK_C_SOURCE_COMPILES("static __declspec( thread ) int x = 1; int main() { return x; }" C_HAS_THREAD) CHECK_C_SOURCE_COMPILES("static __declspec( thread ) int x = 1; int main() { return x; }" C_HAS_THREAD)
ENDIF(NOT MSVC) endif(NOT MSVC)
IF(NOT C_HAS_THREAD) if(NOT C_HAS_THREAD)
MESSAGE(STATUS "Warning: __thread is not supported, generating thread-unsafe code") MESSAGE(STATUS "Warning: __thread is not supported, generating thread-unsafe code")
ELSE(NOT C_HAS_THREAD) else(NOT C_HAS_THREAD)
add_compile_options(-DTH_HAVE_THREAD) add_compile_options(-DTH_HAVE_THREAD)
ENDIF(NOT C_HAS_THREAD) endif(NOT C_HAS_THREAD)
endif() endif()
# #

View File

@ -1,125 +1,125 @@
set(PYTORCH_FOUND_HIP FALSE) set(PYTORCH_FOUND_HIP FALSE)
IF(NOT DEFINED ENV{ROCM_PATH}) if(NOT DEFINED ENV{ROCM_PATH})
SET(ROCM_PATH /opt/rocm) SET(ROCM_PATH /opt/rocm)
ELSE() else()
SET(ROCM_PATH $ENV{ROCM_PATH}) SET(ROCM_PATH $ENV{ROCM_PATH})
ENDIF() endif()
# HIP_PATH # HIP_PATH
IF(NOT DEFINED ENV{HIP_PATH}) if(NOT DEFINED ENV{HIP_PATH})
SET(HIP_PATH ${ROCM_PATH}/hip) SET(HIP_PATH ${ROCM_PATH}/hip)
ELSE() else()
SET(HIP_PATH $ENV{HIP_PATH}) SET(HIP_PATH $ENV{HIP_PATH})
ENDIF() endif()
IF(NOT EXISTS ${HIP_PATH}) if(NOT EXISTS ${HIP_PATH})
return() return()
ENDIF() endif()
# HCC_PATH # HCC_PATH
IF(NOT DEFINED ENV{HCC_PATH}) if(NOT DEFINED ENV{HCC_PATH})
SET(HCC_PATH ${ROCM_PATH}/hcc) SET(HCC_PATH ${ROCM_PATH}/hcc)
ELSE() else()
SET(HCC_PATH $ENV{HCC_PATH}) SET(HCC_PATH $ENV{HCC_PATH})
ENDIF() endif()
# HSA_PATH # HSA_PATH
IF(NOT DEFINED ENV{HSA_PATH}) if(NOT DEFINED ENV{HSA_PATH})
SET(HSA_PATH ${ROCM_PATH}/hsa) SET(HSA_PATH ${ROCM_PATH}/hsa)
ELSE() else()
SET(HSA_PATH $ENV{HSA_PATH}) SET(HSA_PATH $ENV{HSA_PATH})
ENDIF() endif()
# ROCBLAS_PATH # ROCBLAS_PATH
IF(NOT DEFINED ENV{ROCBLAS_PATH}) if(NOT DEFINED ENV{ROCBLAS_PATH})
SET(ROCBLAS_PATH ${ROCM_PATH}/rocblas) SET(ROCBLAS_PATH ${ROCM_PATH}/rocblas)
ELSE() else()
SET(ROCBLAS_PATH $ENV{ROCBLAS_PATH}) SET(ROCBLAS_PATH $ENV{ROCBLAS_PATH})
ENDIF() endif()
# ROCFFT_PATH # ROCFFT_PATH
IF(NOT DEFINED ENV{ROCFFT_PATH}) if(NOT DEFINED ENV{ROCFFT_PATH})
SET(ROCFFT_PATH ${ROCM_PATH}/rocfft) SET(ROCFFT_PATH ${ROCM_PATH}/rocfft)
ELSE() else()
SET(ROCFFT_PATH $ENV{ROCFFT_PATH}) SET(ROCFFT_PATH $ENV{ROCFFT_PATH})
ENDIF() endif()
# HIPSPARSE_PATH # HIPSPARSE_PATH
IF(NOT DEFINED ENV{HIPSPARSE_PATH}) if(NOT DEFINED ENV{HIPSPARSE_PATH})
SET(HIPSPARSE_PATH ${ROCM_PATH}/hipsparse) SET(HIPSPARSE_PATH ${ROCM_PATH}/hipsparse)
ELSE() else()
SET(HIPSPARSE_PATH $ENV{HIPSPARSE_PATH}) SET(HIPSPARSE_PATH $ENV{HIPSPARSE_PATH})
ENDIF() endif()
# THRUST_PATH # THRUST_PATH
IF(DEFINED ENV{THRUST_PATH}) if(DEFINED ENV{THRUST_PATH})
SET(THRUST_PATH $ENV{THRUST_PATH}) SET(THRUST_PATH $ENV{THRUST_PATH})
ELSE() else()
SET(THRUST_PATH ${ROCM_PATH}/include) SET(THRUST_PATH ${ROCM_PATH}/include)
ENDIF() endif()
# HIPRAND_PATH # HIPRAND_PATH
IF(NOT DEFINED ENV{HIPRAND_PATH}) if(NOT DEFINED ENV{HIPRAND_PATH})
SET(HIPRAND_PATH ${ROCM_PATH}/hiprand) SET(HIPRAND_PATH ${ROCM_PATH}/hiprand)
ELSE() else()
SET(HIPRAND_PATH $ENV{HIPRAND_PATH}) SET(HIPRAND_PATH $ENV{HIPRAND_PATH})
ENDIF() endif()
# ROCRAND_PATH # ROCRAND_PATH
IF(NOT DEFINED ENV{ROCRAND_PATH}) if(NOT DEFINED ENV{ROCRAND_PATH})
SET(ROCRAND_PATH ${ROCM_PATH}/rocrand) SET(ROCRAND_PATH ${ROCM_PATH}/rocrand)
ELSE() else()
SET(ROCRAND_PATH $ENV{ROCRAND_PATH}) SET(ROCRAND_PATH $ENV{ROCRAND_PATH})
ENDIF() endif()
# MIOPEN_PATH # MIOPEN_PATH
IF(NOT DEFINED ENV{MIOPEN_PATH}) if(NOT DEFINED ENV{MIOPEN_PATH})
SET(MIOPEN_PATH ${ROCM_PATH}/miopen) SET(MIOPEN_PATH ${ROCM_PATH}/miopen)
ELSE() else()
SET(MIOPEN_PATH $ENV{MIOPEN_PATH}) SET(MIOPEN_PATH $ENV{MIOPEN_PATH})
ENDIF() endif()
# RCCL_PATH # RCCL_PATH
IF(NOT DEFINED ENV{RCCL_PATH}) if(NOT DEFINED ENV{RCCL_PATH})
SET(RCCL_PATH ${ROCM_PATH}/rccl) SET(RCCL_PATH ${ROCM_PATH}/rccl)
ELSE() else()
SET(RCCL_PATH $ENV{RCCL_PATH}) SET(RCCL_PATH $ENV{RCCL_PATH})
ENDIF() endif()
# ROCPRIM_PATH # ROCPRIM_PATH
IF(NOT DEFINED ENV{ROCPRIM_PATH}) if(NOT DEFINED ENV{ROCPRIM_PATH})
SET(ROCPRIM_PATH ${ROCM_PATH}/rocprim) SET(ROCPRIM_PATH ${ROCM_PATH}/rocprim)
ELSE() else()
SET(ROCPRIM_PATH $ENV{ROCPRIM_PATH}) SET(ROCPRIM_PATH $ENV{ROCPRIM_PATH})
ENDIF() endif()
# HIPCUB_PATH # HIPCUB_PATH
IF(NOT DEFINED ENV{HIPCUB_PATH}) if(NOT DEFINED ENV{HIPCUB_PATH})
SET(HIPCUB_PATH ${ROCM_PATH}/hipcub) SET(HIPCUB_PATH ${ROCM_PATH}/hipcub)
ELSE() else()
SET(HIPCUB_PATH $ENV{HIPCUB_PATH}) SET(HIPCUB_PATH $ENV{HIPCUB_PATH})
ENDIF() endif()
# ROCTHRUST_PATH # ROCTHRUST_PATH
IF(NOT DEFINED ENV{ROCTHRUST_PATH}) if(NOT DEFINED ENV{ROCTHRUST_PATH})
SET(ROCTHRUST_PATH ${ROCM_PATH}/rocthrust) SET(ROCTHRUST_PATH ${ROCM_PATH}/rocthrust)
ELSE() else()
SET(ROCTHRUST_PATH $ENV{ROCTHRUST_PATH}) SET(ROCTHRUST_PATH $ENV{ROCTHRUST_PATH})
ENDIF() endif()
# ROCTRACER_PATH # ROCTRACER_PATH
IF(NOT DEFINED ENV{ROCTRACER_PATH}) if(NOT DEFINED ENV{ROCTRACER_PATH})
SET(ROCTRACER_PATH ${ROCM_PATH}/roctracer) SET(ROCTRACER_PATH ${ROCM_PATH}/roctracer)
ELSE() else()
SET(ROCTRACER_PATH $ENV{ROCTRACER_PATH}) SET(ROCTRACER_PATH $ENV{ROCTRACER_PATH})
ENDIF() endif()
IF(NOT DEFINED ENV{PYTORCH_ROCM_ARCH}) if(NOT DEFINED ENV{PYTORCH_ROCM_ARCH})
SET(PYTORCH_ROCM_ARCH gfx803;gfx900;gfx906;gfx908) SET(PYTORCH_ROCM_ARCH gfx803;gfx900;gfx906;gfx908)
ELSE() else()
SET(PYTORCH_ROCM_ARCH $ENV{PYTORCH_ROCM_ARCH}) SET(PYTORCH_ROCM_ARCH $ENV{PYTORCH_ROCM_ARCH})
ENDIF() endif()
# Add HIP to the CMAKE Module Path # Add HIP to the CMAKE Module Path
set(CMAKE_MODULE_PATH ${HIP_PATH}/cmake ${CMAKE_MODULE_PATH}) set(CMAKE_MODULE_PATH ${HIP_PATH}/cmake ${CMAKE_MODULE_PATH})
@ -135,7 +135,7 @@ endmacro()
# Find the HIP Package # Find the HIP Package
find_package_and_print_version(HIP 1.0) find_package_and_print_version(HIP 1.0)
IF(HIP_FOUND) if(HIP_FOUND)
set(PYTORCH_FOUND_HIP TRUE) set(PYTORCH_FOUND_HIP TRUE)
message("\n***** Library versions from dpkg *****\n") message("\n***** Library versions from dpkg *****\n")
@ -196,4 +196,4 @@ IF(HIP_FOUND)
set(hcc_INCLUDE_DIRS ${HCC_PATH}/include) set(hcc_INCLUDE_DIRS ${HCC_PATH}/include)
set(hsa_INCLUDE_DIRS ${HSA_PATH}/include) set(hsa_INCLUDE_DIRS ${HSA_PATH}/include)
ENDIF() endif()

View File

@ -160,13 +160,13 @@ endfunction()
# torch_cuda_based_add_executable(cuda_target) # torch_cuda_based_add_executable(cuda_target)
# #
macro(torch_cuda_based_add_executable cuda_target) macro(torch_cuda_based_add_executable cuda_target)
IF (USE_ROCM) if(USE_ROCM)
hip_add_executable(${cuda_target} ${ARGN}) hip_add_executable(${cuda_target} ${ARGN})
ELSEIF(USE_CUDA) elseif(USE_CUDA)
cuda_add_executable(${cuda_target} ${ARGN}) cuda_add_executable(${cuda_target} ${ARGN})
ELSE() else()
ENDIF() endif()
endmacro() endmacro()
@ -176,12 +176,12 @@ endmacro()
# torch_cuda_based_add_library(cuda_target) # torch_cuda_based_add_library(cuda_target)
# #
macro(torch_cuda_based_add_library cuda_target) macro(torch_cuda_based_add_library cuda_target)
IF (USE_ROCM) if(USE_ROCM)
hip_add_library(${cuda_target} ${ARGN}) hip_add_library(${cuda_target} ${ARGN})
ELSEIF(USE_CUDA) elseif(USE_CUDA)
cuda_add_library(${cuda_target} ${ARGN}) cuda_add_library(${cuda_target} ${ARGN})
ELSE() else()
ENDIF() endif()
endmacro() endmacro()

View File

@ -5,22 +5,22 @@ CMAKE_POLICY(VERSION 2.6)
set(TORCH_ROOT ${CMAKE_CURRENT_LIST_DIR}/../../../) set(TORCH_ROOT ${CMAKE_CURRENT_LIST_DIR}/../../../)
include(${TORCH_ROOT}/cmake/public/threads.cmake) include(${TORCH_ROOT}/cmake/public/threads.cmake)
IF(NOT LIBSHM_INSTALL_LIB_SUBDIR) if(NOT LIBSHM_INSTALL_LIB_SUBDIR)
SET(LIBSHM_INSTALL_LIB_SUBDIR "lib" CACHE PATH "libshm install library directory") SET(LIBSHM_INSTALL_LIB_SUBDIR "lib" CACHE PATH "libshm install library directory")
ENDIF() endif()
# Flags # Flags
# When using MSVC # When using MSVC
IF(MSVC) if(MSVC)
# we want to respect the standard, and we are bored of those **** . # we want to respect the standard, and we are bored of those **** .
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE=1) ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE=1)
ENDIF(MSVC) endif(MSVC)
IF (CMAKE_VERSION VERSION_LESS "3.1") if(CMAKE_VERSION VERSION_LESS "3.1")
SET(CMAKE_CXX_FLAGS "-std=c++14 ${CMAKE_CXX_FLAGS}") SET(CMAKE_CXX_FLAGS "-std=c++14 ${CMAKE_CXX_FLAGS}")
ELSE () else()
SET(CMAKE_CXX_STANDARD 14) SET(CMAKE_CXX_STANDARD 14)
ENDIF () endif()
ADD_LIBRARY(shm SHARED core.cpp) ADD_LIBRARY(shm SHARED core.cpp)

View File

@ -1,7 +1,7 @@
IF(NOT LIBSHM_INSTALL_LIB_SUBDIR) if(NOT LIBSHM_INSTALL_LIB_SUBDIR)
SET(LIBSHM_INSTALL_BIN_SUBDIR "bin" CACHE PATH "libshm install binary directory") SET(LIBSHM_INSTALL_BIN_SUBDIR "bin" CACHE PATH "libshm install binary directory")
SET(LIBSHM_INSTALL_LIB_SUBDIR "lib" CACHE PATH "libshm install library directory") SET(LIBSHM_INSTALL_LIB_SUBDIR "lib" CACHE PATH "libshm install library directory")
ENDIF() endif()
ADD_LIBRARY(shm SHARED core.cpp) ADD_LIBRARY(shm SHARED core.cpp)