@@ -1788,43 +1788,70 @@ list(APPEND Caffe2_DEPENDENCY_LIBS fmt::fmt-header-only)
1788
1788
set (BUILD_SHARED_LIBS ${TEMP_BUILD_SHARED_LIBS} CACHE BOOL "Build shared libs" FORCE)
1789
1789
1790
1790
# ---[ Kineto
1791
+ if (USE_KINETO AND INTERN_BUILD_MOBILE)
1792
+ message (STATUS "Not using libkineto in a mobile build." )
1793
+ set (USE_KINETO OFF )
1794
+ endif ()
1795
+
1796
+ if (USE_KINETO AND (NOT USE_CUDA))
1797
+ message (STATUS "Not using libkineto in a non-CUDA build." )
1798
+ set (USE_KINETO OFF )
1799
+ endif ()
1800
+
1801
+ if (USE_KINETO AND MSVC )
1802
+ message (STATUS "Not using libkineto in a Windows build." )
1803
+ set (USE_KINETO OFF )
1804
+ endif ()
1791
1805
if (USE_KINETO)
1792
- if (USE_KINETO AND NOT TARGET kineto)
1793
- set (CAFFE2_THIRD_PARTY_ROOT "${PROJECT_SOURCE_DIR} /third_party" CACHE STRING "" )
1794
- set (KINETO_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT} /kineto/libkineto" CACHE STRING "" )
1795
- set (KINETO_BUILD_TESTS OFF CACHE BOOL "" )
1796
- set (KINETO_LIBRARY_TYPE "static" CACHE STRING "" )
1797
- set (CUDA_SOURCE_DIR "${CUDA_TOOLKIT_ROOT_DIR} " CACHE STRING "" )
1798
-
1799
- message (STATUS "Configuring Kineto dependency:" )
1800
- message (STATUS " KINETO_SOURCE_DIR = ${KINETO_SOURCE_DIR} " )
1801
- message (STATUS " KINETO_BUILD_TESTS = ${KINETO_BUILD_TESTS} " )
1802
- message (STATUS " KINETO_LIBRARY_TYPE = ${KINETO_LIBRARY_TYPE} " )
1803
- message (STATUS " CUDA_SOURCE_DIR = ${CUDA_SOURCE_DIR} " )
1804
-
1805
- if (EXISTS ${CUDA_SOURCE_DIR} /extras/CUPTI/include )
1806
- set (CUPTI_INCLUDE_DIR "${CUDA_SOURCE_DIR} /extras/CUPTI/include" )
1807
- elseif (EXISTS ${CUDA_SOURCE_DIR} /include /cupti.h)
1808
- set (CUPTI_INCLUDE_DIR "${CUDA_SOURCE_DIR} /include" )
1809
- endif ()
1810
-
1811
- if ((NOT DEFINED CUDA_cupti_LIBRARY) OR (${CUDA_cupti_LIBRARY} STREQUAL "CUDA_cupti_LIBRARY-NOTFOUND" ))
1812
- if (EXISTS ${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti_static.a)
1813
- set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti_static.a" )
1814
- elseif (EXISTS ${CUDA_SOURCE_DIR} /lib64/libcupti_static.a)
1815
- set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /lib64/libcupti_static.a" )
1816
- elseif (EXISTS ${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti.so)
1817
- set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti.so" )
1818
- elseif (EXISTS ${CUDA_SOURCE_DIR} /lib64/libcupti.so)
1819
- set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /lib64/libcupti.so" )
1820
- endif ()
1806
+ set (CAFFE2_THIRD_PARTY_ROOT "${PROJECT_SOURCE_DIR} /third_party" CACHE STRING "" )
1807
+ set (KINETO_SOURCE_DIR "${CAFFE2_THIRD_PARTY_ROOT} /kineto/libkineto" CACHE STRING "" )
1808
+ set (KINETO_BUILD_TESTS OFF CACHE BOOL "" )
1809
+ set (KINETO_LIBRARY_TYPE "static" CACHE STRING "" )
1810
+ set (CUDA_SOURCE_DIR "${CUDA_TOOLKIT_ROOT_DIR} " CACHE STRING "" )
1811
+
1812
+ message (STATUS "Configuring Kineto dependency:" )
1813
+ message (STATUS " KINETO_SOURCE_DIR = ${KINETO_SOURCE_DIR} " )
1814
+ message (STATUS " KINETO_BUILD_TESTS = ${KINETO_BUILD_TESTS} " )
1815
+ message (STATUS " KINETO_LIBRARY_TYPE = ${KINETO_LIBRARY_TYPE} " )
1816
+ message (STATUS " CUDA_SOURCE_DIR = ${CUDA_SOURCE_DIR} " )
1817
+
1818
+ if (EXISTS ${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti_static.a)
1819
+ set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti_static.a" )
1820
+ elseif (EXISTS ${CUDA_SOURCE_DIR} /lib64/libcupti_static.a)
1821
+ set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /lib64/libcupti_static.a" )
1822
+ elseif (USE_CUPTI_SO)
1823
+ if (EXISTS ${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti.so)
1824
+ set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /extras/CUPTI/lib64/libcupti.so" )
1825
+ elseif (EXISTS ${CUDA_SOURCE_DIR} /lib64/libcupti.so)
1826
+ set (CUDA_cupti_LIBRARY "${CUDA_SOURCE_DIR} /lib64/libcupti.so" )
1827
+ endif ()
1828
+ endif ()
1829
+
1830
+ if (EXISTS ${CUDA_SOURCE_DIR} /extras/CUPTI/include )
1831
+ set (CUPTI_INCLUDE_DIR "${CUDA_SOURCE_DIR} /extras/CUPTI/include" )
1832
+ elseif (EXISTS ${CUDA_SOURCE_DIR} /include /cupti.h)
1833
+ set (CUPTI_INCLUDE_DIR "${CUDA_SOURCE_DIR} /include" )
1834
+ endif ()
1835
+
1836
+ set (FOUND_CUPTI FALSE )
1837
+ if ((DEFINED CUPTI_INCLUDE_DIR) AND (DEFINED CUDA_cupti_LIBRARY))
1838
+ if ((CUDA_cupti_LIBRARY MATCHES "libcupti_static.a" ) OR ((CUDA_cupti_LIBRARY MATCHES "libcupti.so" ) AND (USE_CUPTI_SO)))
1839
+ set (FOUND_CUPTI TRUE )
1821
1840
endif ()
1841
+ endif ()
1842
+
1843
+ if (FOUND_CUPTI)
1822
1844
message (STATUS " CUDA_cupti_LIBRARY = ${CUDA_cupti_LIBRARY} " )
1823
1845
message (STATUS " CUPTI_INCLUDE_DIR = ${CUPTI_INCLUDE_DIR} " )
1846
+ if (NOT TARGET kineto)
1847
+ add_subdirectory ("${KINETO_SOURCE_DIR} " )
1848
+ message (STATUS "Configured Kineto as a dependency." )
1849
+ endif ()
1824
1850
1825
- add_subdirectory ("${KINETO_SOURCE_DIR} " )
1826
- message (STATUS "Configured Kineto as a dependency." )
1851
+ string (APPEND CMAKE_CXX_FLAGS " -DUSE_KINETO" )
1852
+ list (APPEND Caffe2_DEPENDENCY_LIBS kineto)
1853
+ else ()
1854
+ message (STATUS "Could not find CUPTI library, skipping Kineto build" )
1855
+ set (USE_KINETO OFF )
1827
1856
endif ()
1828
-
1829
- list (APPEND Caffe2_DEPENDENCY_LIBS kineto)
1830
1857
endif ()
0 commit comments