1
# Prints accumulated Caffe2 configuration summary
2
function(caffe2_print_configuration_summary)
4
message(STATUS "******** Summary ********")
5
message(STATUS "General:")
6
message(STATUS " CMake version : ${CMAKE_VERSION}")
7
message(STATUS " CMake command : ${CMAKE_COMMAND}")
8
message(STATUS " System : ${CMAKE_SYSTEM_NAME}")
9
message(STATUS " C++ compiler : ${CMAKE_CXX_COMPILER}")
10
message(STATUS " C++ compiler id : ${CMAKE_CXX_COMPILER_ID}")
11
message(STATUS " C++ compiler version : ${CMAKE_CXX_COMPILER_VERSION}")
12
message(STATUS " Using ccache if found : ${USE_CCACHE}")
14
message(STATUS " Found ccache : ${CCACHE_PROGRAM}")
16
message(STATUS " CXX flags : ${CMAKE_CXX_FLAGS}")
17
message(STATUS " Build type : ${CMAKE_BUILD_TYPE}")
18
get_directory_property(tmp DIRECTORY ${PROJECT_SOURCE_DIR} COMPILE_DEFINITIONS)
19
message(STATUS " Compile definitions : ${tmp}")
20
message(STATUS " CMAKE_PREFIX_PATH : ${CMAKE_PREFIX_PATH}")
21
message(STATUS " CMAKE_INSTALL_PREFIX : ${CMAKE_INSTALL_PREFIX}")
22
message(STATUS " USE_GOLD_LINKER : ${USE_GOLD_LINKER}")
25
message(STATUS " TORCH_VERSION : ${TORCH_VERSION}")
26
message(STATUS " BUILD_CAFFE2 : ${BUILD_CAFFE2}")
27
message(STATUS " BUILD_CAFFE2_OPS : ${BUILD_CAFFE2_OPS}")
28
message(STATUS " BUILD_STATIC_RUNTIME_BENCHMARK: ${BUILD_STATIC_RUNTIME_BENCHMARK}")
29
message(STATUS " BUILD_BINARY : ${BUILD_BINARY}")
30
message(STATUS " BUILD_CUSTOM_PROTOBUF : ${BUILD_CUSTOM_PROTOBUF}")
31
if(${CAFFE2_LINK_LOCAL_PROTOBUF})
32
message(STATUS " Link local protobuf : ${CAFFE2_LINK_LOCAL_PROTOBUF}")
34
message(STATUS " Protobuf compiler : ${PROTOBUF_PROTOC_EXECUTABLE}")
35
message(STATUS " Protobuf includes : ${PROTOBUF_INCLUDE_DIRS}")
36
message(STATUS " Protobuf libraries : ${PROTOBUF_LIBRARIES}")
38
message(STATUS " BUILD_DOCS : ${BUILD_DOCS}")
39
message(STATUS " BUILD_PYTHON : ${BUILD_PYTHON}")
41
message(STATUS " Python version : ${PYTHON_VERSION_STRING}")
42
message(STATUS " Python executable : ${PYTHON_EXECUTABLE}")
43
message(STATUS " Pythonlibs version : ${PYTHONLIBS_VERSION_STRING}")
44
message(STATUS " Python library : ${PYTHON_LIBRARIES}")
45
message(STATUS " Python includes : ${PYTHON_INCLUDE_DIRS}")
46
message(STATUS " Python site-packages: ${PYTHON_SITE_PACKAGES}")
48
message(STATUS " BUILD_SHARED_LIBS : ${BUILD_SHARED_LIBS}")
49
message(STATUS " CAFFE2_USE_MSVC_STATIC_RUNTIME : ${CAFFE2_USE_MSVC_STATIC_RUNTIME}")
50
message(STATUS " BUILD_TEST : ${BUILD_TEST}")
51
message(STATUS " BUILD_JNI : ${BUILD_JNI}")
52
message(STATUS " BUILD_MOBILE_AUTOGRAD : ${BUILD_MOBILE_AUTOGRAD}")
53
message(STATUS " BUILD_LITE_INTERPRETER: ${BUILD_LITE_INTERPRETER}")
54
if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
55
message(STATUS " CROSS_COMPILING_MACOSX : ${CROSS_COMPILING_MACOSX}")
57
message(STATUS " INTERN_BUILD_MOBILE : ${INTERN_BUILD_MOBILE}")
58
message(STATUS " TRACING_BASED : ${TRACING_BASED}")
60
message(STATUS " USE_BLAS : ${USE_BLAS}")
62
message(STATUS " BLAS : ${BLAS_INFO}")
63
message(STATUS " BLAS_HAS_SBGEMM : ${BLAS_HAS_SBGEMM}")
65
message(STATUS " USE_LAPACK : ${USE_LAPACK}")
67
message(STATUS " LAPACK : ${LAPACK_INFO}")
69
message(STATUS " USE_ASAN : ${USE_ASAN}")
70
message(STATUS " USE_TSAN : ${USE_TSAN}")
71
message(STATUS " USE_CPP_CODE_COVERAGE : ${USE_CPP_CODE_COVERAGE}")
72
message(STATUS " USE_CUDA : ${USE_CUDA}")
74
message(STATUS " Split CUDA : ${BUILD_SPLIT_CUDA}")
75
message(STATUS " CUDA static link : ${CAFFE2_STATIC_LINK_CUDA}")
76
message(STATUS " USE_CUDNN : ${USE_CUDNN}")
77
message(STATUS " USE_EXPERIMENTAL_CUDNN_V8_API: ${USE_EXPERIMENTAL_CUDNN_V8_API}")
78
message(STATUS " USE_CUSPARSELT : ${USE_CUSPARSELT}")
79
message(STATUS " CUDA version : ${CUDA_VERSION}")
80
message(STATUS " USE_FLASH_ATTENTION : ${USE_FLASH_ATTENTION}")
81
message(STATUS " USE_MEM_EFF_ATTENTION : ${USE_MEM_EFF_ATTENTION}")
83
message(STATUS " cuDNN version : ${CUDNN_VERSION}")
86
message(STATUS " cuSPARSELt version : ${CUSPARSELT_VERSION}")
88
message(STATUS " CUDA root directory : ${CUDA_TOOLKIT_ROOT_DIR}")
89
message(STATUS " CUDA library : ${CUDA_cuda_driver_LIBRARY}")
90
message(STATUS " cudart library : ${CUDA_cudart_LIBRARY}")
91
message(STATUS " cublas library : ${CUDA_cublas_LIBRARY}")
92
message(STATUS " cufft library : ${CUDA_cufft_LIBRARY}")
93
message(STATUS " curand library : ${CUDA_curand_LIBRARY}")
94
message(STATUS " cusparse library : ${CUDA_cusparse_LIBRARY}")
96
get_target_property(__tmp torch::cudnn INTERFACE_LINK_LIBRARIES)
97
message(STATUS " cuDNN library : ${__tmp}")
100
get_target_property(__tmp torch::cusparselt INTERFACE_LINK_LIBRARIES)
101
message(STATUS " cuSPARSELt library : ${__tmp}")
103
message(STATUS " nvrtc : ${CUDA_nvrtc_LIBRARY}")
104
message(STATUS " CUDA include path : ${CUDA_INCLUDE_DIRS}")
105
message(STATUS " NVCC executable : ${CUDA_NVCC_EXECUTABLE}")
106
message(STATUS " CUDA compiler : ${CMAKE_CUDA_COMPILER}")
107
message(STATUS " CUDA flags : ${CMAKE_CUDA_FLAGS}")
108
message(STATUS " CUDA host compiler : ${CMAKE_CUDA_HOST_COMPILER}")
109
message(STATUS " CUDA --device-c : ${CUDA_SEPARABLE_COMPILATION}")
110
message(STATUS " USE_TENSORRT : ${USE_TENSORRT}")
112
message(STATUS " TensorRT runtime library: ${TENSORRT_LIBRARY}")
113
message(STATUS " TensorRT include path : ${TENSORRT_INCLUDE_DIR}")
116
message(STATUS " USE_XPU : ${USE_XPU}")
118
message(STATUS " SYCL include path : ${SYCL_INCLUDE_DIR}")
119
message(STATUS " SYCL library : ${SYCL_LIBRARY}")
121
message(STATUS " USE_ROCM : ${USE_ROCM}")
123
message(STATUS " ROCM_VERSION : ${ROCM_VERSION}")
124
message(STATUS " USE_FLASH_ATTENTION : ${USE_FLASH_ATTENTION}")
126
message(STATUS " BUILD_NVFUSER : ${BUILD_NVFUSER}")
127
message(STATUS " USE_EIGEN_FOR_BLAS : ${CAFFE2_USE_EIGEN_FOR_BLAS}")
128
message(STATUS " USE_FBGEMM : ${USE_FBGEMM}")
129
message(STATUS " USE_FAKELOWP : ${USE_FAKELOWP}")
130
message(STATUS " USE_KINETO : ${USE_KINETO}")
131
message(STATUS " USE_FFMPEG : ${USE_FFMPEG}")
132
message(STATUS " USE_GFLAGS : ${USE_GFLAGS}")
133
message(STATUS " USE_GLOG : ${USE_GLOG}")
134
message(STATUS " USE_LEVELDB : ${USE_LEVELDB}")
136
message(STATUS " LevelDB version : ${LEVELDB_VERSION}")
137
message(STATUS " Snappy version : ${Snappy_VERSION}")
139
message(STATUS " USE_LITE_PROTO : ${USE_LITE_PROTO}")
140
message(STATUS " USE_LMDB : ${USE_LMDB}")
142
message(STATUS " LMDB version : ${LMDB_VERSION}")
144
message(STATUS " USE_METAL : ${USE_METAL}")
145
message(STATUS " USE_PYTORCH_METAL : ${USE_PYTORCH_METAL}")
146
message(STATUS " USE_PYTORCH_METAL_EXPORT : ${USE_PYTORCH_METAL_EXPORT}")
147
message(STATUS " USE_MPS : ${USE_MPS}")
148
message(STATUS " USE_MKL : ${CAFFE2_USE_MKL}")
149
message(STATUS " USE_MKLDNN : ${USE_MKLDNN}")
151
message(STATUS " USE_MKLDNN_ACL : ${USE_MKLDNN_ACL}")
152
message(STATUS " USE_MKLDNN_CBLAS : ${USE_MKLDNN_CBLAS}")
154
message(STATUS " USE_UCC : ${USE_UCC}")
156
message(STATUS " USE_SYSTEM_UCC : ${USE_SYSTEM_UCC}")
158
message(STATUS " USE_ITT : ${USE_ITT}")
159
message(STATUS " USE_NCCL : ${USE_NCCL}")
161
message(STATUS " USE_SYSTEM_NCCL : ${USE_SYSTEM_NCCL}")
163
message(STATUS " USE_NNPACK : ${USE_NNPACK}")
164
message(STATUS " USE_NUMPY : ${USE_NUMPY}")
165
message(STATUS " USE_OBSERVERS : ${USE_OBSERVERS}")
166
message(STATUS " USE_OPENCL : ${USE_OPENCL}")
167
message(STATUS " USE_OPENCV : ${USE_OPENCV}")
169
message(STATUS " OpenCV version : ${OpenCV_VERSION}")
171
message(STATUS " USE_OPENMP : ${USE_OPENMP}")
172
message(STATUS " USE_TBB : ${USE_TBB}")
174
message(STATUS " USE_SYSTEM_TBB : ${USE_SYSTEM_TBB}")
176
message(STATUS " USE_MIMALLOC : ${USE_MIMALLOC}")
177
message(STATUS " USE_VULKAN : ${USE_VULKAN}")
179
message(STATUS " USE_VULKAN_FP16_INFERENCE : ${USE_VULKAN_FP16_INFERENCE}")
180
message(STATUS " USE_VULKAN_RELAXED_PRECISION : ${USE_VULKAN_RELAXED_PRECISION}")
182
message(STATUS " USE_PROF : ${USE_PROF}")
183
message(STATUS " USE_QNNPACK : ${USE_QNNPACK}")
184
message(STATUS " USE_PYTORCH_QNNPACK : ${USE_PYTORCH_QNNPACK}")
185
message(STATUS " USE_XNNPACK : ${USE_XNNPACK}")
186
message(STATUS " USE_REDIS : ${USE_REDIS}")
187
message(STATUS " USE_ROCKSDB : ${USE_ROCKSDB}")
188
message(STATUS " USE_ZMQ : ${USE_ZMQ}")
189
message(STATUS " USE_DISTRIBUTED : ${USE_DISTRIBUTED}")
190
if(${USE_DISTRIBUTED})
191
message(STATUS " USE_MPI : ${USE_MPI}")
192
message(STATUS " USE_GLOO : ${USE_GLOO}")
193
message(STATUS " USE_GLOO_WITH_OPENSSL : ${USE_GLOO_WITH_OPENSSL}")
194
message(STATUS " USE_TENSORPIPE : ${USE_TENSORPIPE}")
196
if(NOT "${SELECTED_OP_LIST}" STREQUAL "")
197
message(STATUS " SELECTED_OP_LIST : ${SELECTED_OP_LIST}")
199
message(STATUS " Public Dependencies : ${Caffe2_PUBLIC_DEPENDENCY_LIBS}")
200
message(STATUS " Private Dependencies : ${Caffe2_DEPENDENCY_LIBS}")
201
message(STATUS " Public CUDA Deps. : ${Caffe2_PUBLIC_CUDA_DEPENDENCY_LIBS}")
202
message(STATUS " Private CUDA Deps. : ${Caffe2_CUDA_DEPENDENCY_LIBS}")
204
message(STATUS " USE_COREML_DELEGATE : ${USE_COREML_DELEGATE}")
205
message(STATUS " BUILD_LAZY_TS_BACKEND : ${BUILD_LAZY_TS_BACKEND}")
206
message(STATUS " USE_ROCM_KERNEL_ASSERT : ${USE_ROCM_KERNEL_ASSERT}")