@@ -23,7 +23,7 @@ option(RPU_USE_TORCH_BUFFERS "Use torch buffers for RPUCuda" ON)
2323
2424
2525set (RPU_BLAS "OpenBLAS" CACHE STRING "BLAS backend of choice (OpenBLAS, MKL)" )
26- set (RPU_CUDA_ARCHITECTURES "70; 75;80" CACHE STRING "Target CUDA architectures" )
26+ set (RPU_CUDA_ARCHITECTURES "75;80;89 " CACHE STRING "Target CUDA architectures" )
2727
2828# Internal variables.
2929set (CUDA_TARGET_PROPERTIES POSITION_INDEPENDENT_CODE ON
@@ -110,12 +110,13 @@ if(USE_CUDA)
110110 if (RPU_USE_TORCH_BUFFERS)
111111 if (BUILD_TEST)
112112 # we could just link torch to the tests in principle
113- message (FATAL_ERROR "Cannot use torch buffers when BUILD_TEST=ON. Set RPU_USE_TORCH_BUFFERS=OFF" )
113+ message (STATUS "Cannot use torch buffers when BUILD_TEST=ON. Set RPU_USE_TORCH_BUFFERS=OFF" )
114+ set (RPU_USE_TORCH_BUFFERS OFF )
115+ else (BUILD_TEST )
116+ add_compile_definitions (RPU_TORCH_CUDA_BUFFERS )
117+ set (CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-relaxed-constexpr" )
118+ set (CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Xcudafe --diag_suppress=186" )
114119 endif (BUILD_TEST )
115-
116- add_compile_definitions (RPU_TORCH_CUDA_BUFFERS )
117- set (CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-relaxed-constexpr" )
118- set (CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Xcudafe --diag_suppress=186" )
119120 endif (RPU_USE_TORCH_BUFFERS )
120121
121122 if (${CUDAToolkit_VERSION_MAJOR} LESS 11)
@@ -140,7 +141,7 @@ if (BUILD_EXTENSION)
140141
141142 target_link_libraries (AIHWKIT_EXTENSION_OPS torch_python c10 torch_cpu )
142143 target_include_directories (AIHWKIT_EXTENSION_OPS PRIVATE src/aihwkit/extension/extension_src )
143-
144+
144145 if (WIN32 )
145146 target_link_libraries (AIHWKIT_EXTENSION_OPS c10.lib torch_cpu.lib )
146147 endif ()
@@ -149,7 +150,7 @@ if (BUILD_EXTENSION)
149150 add_library (AIHWKIT_EXTENSION_OPS_GPU ${AIHWKIT_EXTENSION_OPS_GPU_SRCS} )
150151 target_link_libraries (AIHWKIT_EXTENSION_OPS_GPU AIHWKIT_EXTENSION_OPS c10_cuda torch_cuda cudart )
151152 target_include_directories (AIHWKIT_EXTENSION_OPS_GPU PRIVATE src/aihwkit/extension/extension_src )
152-
153+
153154 set (CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} --expt-relaxed-constexpr" )
154155 set (CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} -Xcudafe --diag_suppress=186" )
155156 set_target_properties (AIHWKIT_EXTENSION_OPS_GPU PROPERTIES ${CUDA_TARGET_PROPERTIES} )
@@ -187,20 +188,34 @@ endif(BUILD_EXTENSION)
187188
188189# Add tests.
189190if (BUILD_TEST)
191+
190192 enable_testing ()
191193
192194 foreach (test_src ${RPU_CPU_TEST_SRCS} ${RPU_GPU_TEST_SRCS} )
193195 get_filename_component (test_name ${test_src} NAME_WE )
194196 add_executable (${test_name} ${test_src} )
195197 target_link_libraries (${test_name} gtest gmock )
198+ target_link_libraries (${test_name} torch_python c10 torch_cpu )
199+ set_target_properties (${test_name} PROPERTIES CXX_STANDARD 17
200+ POSITION_INDEPENDENT_CODE ON )
201+
202+ if (WIN32 )
203+ target_link_libraries (${test_name} c10.lib torch_cpu.lib )
204+ endif ()
196205
197206 # Link to main library.
198- if (${test_src} IN_LIST RPU_CPU_TEST_SRCS)
199- target_link_libraries (${test_name} RPU_CPU ${RPU_DEPENDENCY_LIBS} )
200- else ()
207+ target_link_libraries (${test_name} RPU_CPU ${RPU_DEPENDENCY_LIBS} )
208+
209+ if (${test_src} IN_LIST RPU_GPU_TEST_SRCS)
210+ target_link_libraries (${test_name} torch_cuda c10_cuda cudart )
201211 target_link_libraries (${test_name} RPU_GPU RPU_CPU cublas curand ${RPU_DEPENDENCY_LIBS} )
202212 set_target_properties (${test_name} PROPERTIES ${CUDA_TARGET_PROPERTIES} )
203213 set_property (TARGET ${test_name} PROPERTY CUDA_ARCHITECTURES ${RPU_CUDA_ARCHITECTURES} )
214+
215+ if (WIN32 )
216+ target_link_libraries (${test_name} c10_cuda.lib torch_cuda.lib )
217+ endif (WIN32 )
218+
204219 endif ()
205220
206221 add_test (NAME ${test_name} COMMAND $<TARGET_FILE :${test_name} >)
0 commit comments