/cuda-insight-toolkit/Examples/src/CMakeLists.txt

https://github.com/midas-journal/midas-journal-802 · CMake · 659 lines · 488 code · 107 blank · 64 comment · 0 complexity · 570b23e2b59563ecb33cecd4e0a367cf MD5 · raw file

  1. ##############################################################################
  2. # There are two ways to add include directories to the NVCC command
  3. # line:
  4. IF (CITK_USE_CUDA)
  5. set(CUDA_PROPAGATE_HOST_FLAGS ON)
  6. # The cuda_include_directories adds paths to only cuda compilation.
  7. CUDA_INCLUDE_DIRECTORIES(
  8. ${CMAKE_CURRENT_SOURCE_DIR}
  9. ${CMAKE_CURRENT_SOURCE_DIR}/thrust
  10. INCLUDE_DIRECTORIES(
  11. ${CUDA_INCLUDE_DIRECTORIES}
  12. )
  13. # Set CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE when you want to add the same .cu
  14. # file to multiple targets.
  15. set(CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE OFF)
  16. )
  17. ENDIF(CITK_USE_CUDA)
  18. # The include_directories adds paths to both C/C++ compilation in the native
  19. # compiler and cuda compilation in NVCC. Note that CUDA_INCLUDE_DIRS is added
  20. # automatically by CUDA_ADD_EXECUTABLE and CUDA_ADD_LIBRARY.
  21. INCLUDE_DIRECTORIES(
  22. AbsImageFilter
  23. AddImageFilter
  24. AddConstantToImageFilter
  25. BinaryThresholdImageFilter
  26. DivideImageFilter
  27. DivideByConstantImageFilter
  28. GrayscaleDilateImageFilter
  29. GrayscaleErodeImageFilter
  30. GrayscaleMorphologicalClosingImageFilter
  31. GrayscaleMorphologicalOpeningImageFilter
  32. MaximumImageFilter
  33. MeanImageFilter
  34. MinimumImageFilter
  35. MultiplyImageFilter
  36. MultiplyByConstantImageFilter
  37. NeighborhoodFilter
  38. RescaleIntensityImageFilter
  39. StatisticsImageFilter
  40. SubtractImageFilter
  41. SubtractConstantFromImageFilter
  42. CudaFunctions
  43. )
  44. ##############################################################################
  45. # There are four ways to compile source files with NVCC.
  46. IF (CITK_USE_CUDA)
  47. # Use one executable only.
  48. CUDA_ADD_EXECUTABLE(ITK-GPU-OPEN
  49. GrayscaleDilateImageFilter/CudaGrayscaleDilateImageFilterKernel.cu
  50. GrayscaleErodeImageFilter/CudaGrayscaleErodeImageFilterKernel.cu
  51. itk-gpu-open.cxx
  52. )
  53. TARGET_LINK_LIBRARIES ( ITK-GPU-OPEN
  54. ITKBasicFilters ITKCommon ITKIO
  55. )
  56. CUDA_ADD_EXECUTABLE(ITK-GPU-CLOSE
  57. GrayscaleDilateImageFilter/CudaGrayscaleDilateImageFilterKernel.cu
  58. GrayscaleErodeImageFilter/CudaGrayscaleErodeImageFilterKernel.cu
  59. itk-gpu-close.cxx
  60. )
  61. TARGET_LINK_LIBRARIES ( ITK-GPU-CLOSE
  62. ITKBasicFilters ITKCommon ITKIO
  63. )
  64. CUDA_ADD_EXECUTABLE(ITK-GPU-ERODE
  65. GrayscaleErodeImageFilter/CudaGrayscaleErodeImageFilterKernel.cu
  66. itk-gpu-erode.cxx
  67. )
  68. TARGET_LINK_LIBRARIES ( ITK-GPU-ERODE
  69. ITKBasicFilters ITKCommon ITKIO
  70. )
  71. CUDA_ADD_EXECUTABLE(ITK-GPU-DILATE
  72. GrayscaleDilateImageFilter/CudaGrayscaleDilateImageFilterKernel.cu
  73. itk-gpu-dilate.cxx
  74. )
  75. TARGET_LINK_LIBRARIES ( ITK-GPU-DILATE
  76. ITKBasicFilters ITKCommon ITKIO
  77. )
  78. CUDA_ADD_EXECUTABLE(ITK-GPU-ABS
  79. AbsImageFilter/CudaAbsImageFilterKernel.cu
  80. itk-gpu-abs.cxx
  81. )
  82. TARGET_LINK_LIBRARIES ( ITK-GPU-ABS
  83. ITKBasicFilters ITKCommon ITKIO
  84. )
  85. CUDA_ADD_EXECUTABLE(ITK-GPU-ADD
  86. AddImageFilter/CudaAddImageFilterKernel.cu
  87. itk-gpu-add.cxx
  88. )
  89. TARGET_LINK_LIBRARIES ( ITK-GPU-ADD
  90. ITKBasicFilters ITKCommon ITKIO
  91. )
  92. CUDA_ADD_EXECUTABLE(ITK-GPU-ADDC
  93. AddConstantToImageFilter/CudaAddConstantToImageFilterKernel.cu
  94. itk-gpu-addc.cxx
  95. )
  96. TARGET_LINK_LIBRARIES ( ITK-GPU-ADDC
  97. ITKBasicFilters ITKCommon ITKIO
  98. )
  99. CUDA_ADD_EXECUTABLE(ITK-GPU-BINARYT
  100. BinaryThresholdImageFilter/CudaBinaryThresholdImageFilterKernel.cu
  101. itk-gpu-binarythreshold.cxx
  102. )
  103. TARGET_LINK_LIBRARIES ( ITK-GPU-BINARYT
  104. ITKBasicFilters ITKCommon ITKIO
  105. )
  106. CUDA_ADD_EXECUTABLE(ITK-GPU-DIVIDE
  107. DivideImageFilter/CudaDivideImageFilterKernel.cu
  108. itk-gpu-divide.cxx
  109. )
  110. TARGET_LINK_LIBRARIES ( ITK-GPU-DIVIDE
  111. ITKBasicFilters ITKCommon ITKIO
  112. )
  113. CUDA_ADD_EXECUTABLE(ITK-GPU-DIVIDEC
  114. DivideByConstantImageFilter/CudaDivideByConstantImageFilterKernel.cu
  115. itk-gpu-dividec.cxx
  116. )
  117. TARGET_LINK_LIBRARIES ( ITK-GPU-DIVIDEC
  118. ITKBasicFilters ITKCommon ITKIO
  119. )
  120. CUDA_ADD_EXECUTABLE(ITK-GPU-MAXIMUM
  121. MaximumImageFilter/CudaMaximumImageFilterKernel.cu
  122. itk-gpu-maximum.cxx
  123. )
  124. TARGET_LINK_LIBRARIES ( ITK-GPU-MAXIMUM
  125. ITKBasicFilters ITKCommon ITKIO
  126. )
  127. CUDA_ADD_EXECUTABLE(ITK-GPU-MINIMUM
  128. MinimumImageFilter/CudaMinimumImageFilterKernel.cu
  129. itk-gpu-minimum.cxx
  130. )
  131. TARGET_LINK_LIBRARIES ( ITK-GPU-MINIMUM
  132. ITKBasicFilters ITKCommon ITKIO
  133. )
  134. CUDA_ADD_EXECUTABLE(ITK-GPU-MEAN
  135. MeanImageFilter/CudaMeanImageFilterKernel.cu
  136. itk-gpu-mean.cxx
  137. )
  138. TARGET_LINK_LIBRARIES ( ITK-GPU-MEAN
  139. ITKBasicFilters ITKCommon ITKIO
  140. )
  141. CUDA_ADD_EXECUTABLE(ITK-GPU-MULTIPLY
  142. MultiplyImageFilter/CudaMultiplyImageFilterKernel.cu
  143. itk-gpu-multiply.cxx
  144. )
  145. TARGET_LINK_LIBRARIES ( ITK-GPU-MULTIPLY
  146. ITKBasicFilters ITKCommon ITKIO
  147. )
  148. CUDA_ADD_EXECUTABLE(ITK-GPU-MULTIPLYC
  149. MultiplyByConstantImageFilter/CudaMultiplyByConstantImageFilterKernel.cu
  150. itk-gpu-multiplyc.cxx
  151. )
  152. TARGET_LINK_LIBRARIES ( ITK-GPU-MULTIPLYC
  153. ITKBasicFilters ITKCommon ITKIO
  154. )
  155. CUDA_ADD_EXECUTABLE(ITK-GPU-RESCALE
  156. RescaleIntensityImageFilter/CudaRescaleIntensityImageFilterKernel.cu
  157. itk-gpu-rescaleintensity.cxx
  158. )
  159. TARGET_LINK_LIBRARIES ( ITK-GPU-RESCALE
  160. ITKBasicFilters ITKCommon ITKIO
  161. )
  162. CUDA_ADD_EXECUTABLE(ITK-GPU-STATISTICS
  163. StatisticsImageFilter/CudaStatisticsImageFilterKernel.cu
  164. itk-gpu-statistics.cxx
  165. )
  166. TARGET_LINK_LIBRARIES ( ITK-GPU-STATISTICS
  167. ITKBasicFilters ITKCommon ITKIO
  168. )
  169. CUDA_ADD_EXECUTABLE(ITK-GPU-SUBTRACT
  170. SubtractImageFilter/CudaSubtractImageFilterKernel.cu
  171. itk-gpu-subtract.cxx
  172. )
  173. TARGET_LINK_LIBRARIES ( ITK-GPU-SUBTRACT
  174. ITKBasicFilters ITKCommon ITKIO
  175. )
  176. CUDA_ADD_EXECUTABLE(ITK-GPU-SUBTRACTC
  177. SubtractConstantFromImageFilter/CudaSubtractConstantFromImageFilterKernel.cu
  178. itk-gpu-subtractc.cxx
  179. )
  180. TARGET_LINK_LIBRARIES ( ITK-GPU-SUBTRACTC
  181. ITKBasicFilters ITKCommon ITKIO
  182. )
  183. CUDA_ADD_EXECUTABLE(ITK-SIMPLE-PERF
  184. SubtractConstantFromImageFilter/CudaSubtractConstantFromImageFilterKernel.cu
  185. AddConstantToImageFilter/CudaAddConstantToImageFilterKernel.cu
  186. StatisticsImageFilter/CudaStatisticsImageFilterKernel.cu
  187. simple_perf_test.cxx
  188. )
  189. TARGET_LINK_LIBRARIES ( ITK-SIMPLE-PERF
  190. ITKBasicFilters ITKCommon ITKIO
  191. )
  192. CUDA_ADD_EXECUTABLE(ITK-MEAN-PERF
  193. MeanImageFilter/CudaMeanImageFilterKernel.cu
  194. mean_perf_test.cxx
  195. )
  196. TARGET_LINK_LIBRARIES ( ITK-MEAN-PERF
  197. ITKBasicFilters ITKCommon ITKIO
  198. )
  199. ENDIF(CITK_USE_CUDA)
  200. ADD_EXECUTABLE(ITK-CPU-OPEN
  201. itk-cpu-open.cxx
  202. )
  203. TARGET_LINK_LIBRARIES ( ITK-CPU-OPEN
  204. ITKBasicFilters ITKCommon ITKIO rt
  205. )
  206. ADD_EXECUTABLE(ITK-CPU-CLOSE
  207. itk-cpu-close.cxx
  208. )
  209. TARGET_LINK_LIBRARIES ( ITK-CPU-CLOSE
  210. ITKBasicFilters ITKCommon ITKIO rt
  211. )
  212. ADD_EXECUTABLE(ITK-CPU-ERODE
  213. itk-cpu-erode.cxx
  214. )
  215. TARGET_LINK_LIBRARIES ( ITK-CPU-ERODE
  216. ITKBasicFilters ITKCommon ITKIO rt
  217. )
  218. ADD_EXECUTABLE(ITK-CPU-DILATE
  219. itk-cpu-dilate.cxx
  220. )
  221. TARGET_LINK_LIBRARIES ( ITK-CPU-DILATE
  222. ITKBasicFilters ITKCommon ITKIO rt
  223. )
  224. ADD_EXECUTABLE(ITK-CPU-ABS
  225. itk-cpu-abs.cxx
  226. )
  227. TARGET_LINK_LIBRARIES ( ITK-CPU-ABS
  228. ITKBasicFilters ITKCommon ITKIO rt
  229. )
  230. ADD_EXECUTABLE(ITK-CPU-ADD
  231. itk-cpu-add.cxx
  232. )
  233. TARGET_LINK_LIBRARIES ( ITK-CPU-ADD
  234. ITKBasicFilters ITKCommon ITKIO rt
  235. )
  236. ADD_EXECUTABLE(ITK-CPU-ADDC
  237. itk-cpu-addc.cxx
  238. )
  239. TARGET_LINK_LIBRARIES ( ITK-CPU-ADDC
  240. ITKBasicFilters ITKCommon ITKIO rt
  241. )
  242. ADD_EXECUTABLE(ITK-CPU-BINARYT
  243. itk-cpu-binarythreshold.cxx
  244. )
  245. TARGET_LINK_LIBRARIES ( ITK-CPU-BINARYT
  246. ITKBasicFilters ITKCommon ITKIO rt
  247. )
  248. ADD_EXECUTABLE(ITK-CPU-DIVIDE
  249. itk-cpu-divide.cxx
  250. )
  251. TARGET_LINK_LIBRARIES ( ITK-CPU-DIVIDE
  252. ITKBasicFilters ITKCommon ITKIO rt
  253. )
  254. ADD_EXECUTABLE(ITK-CPU-DIVIDEC
  255. itk-cpu-dividec.cxx
  256. )
  257. TARGET_LINK_LIBRARIES ( ITK-CPU-DIVIDEC
  258. ITKBasicFilters ITKCommon ITKIO rt
  259. )
  260. ADD_EXECUTABLE(ITK-CPU-MAXIMUM
  261. itk-cpu-maximum.cxx
  262. )
  263. TARGET_LINK_LIBRARIES ( ITK-CPU-MAXIMUM
  264. ITKBasicFilters ITKCommon ITKIO rt
  265. )
  266. ADD_EXECUTABLE(ITK-CPU-MINIMUM
  267. itk-cpu-minimum.cxx
  268. )
  269. TARGET_LINK_LIBRARIES ( ITK-CPU-MINIMUM
  270. ITKBasicFilters ITKCommon ITKIO rt
  271. )
  272. ADD_EXECUTABLE(ITK-CPU-MEAN
  273. itk-cpu-mean.cxx
  274. )
  275. TARGET_LINK_LIBRARIES ( ITK-CPU-MEAN
  276. ITKBasicFilters ITKCommon ITKIO rt
  277. )
  278. ADD_EXECUTABLE(ITK-CPU-MULTIPLY
  279. itk-cpu-multiply.cxx
  280. )
  281. TARGET_LINK_LIBRARIES ( ITK-CPU-MULTIPLY
  282. ITKBasicFilters ITKCommon ITKIO rt
  283. )
  284. ADD_EXECUTABLE(ITK-CPU-MULTIPLYC
  285. itk-cpu-multiplyc.cxx
  286. )
  287. TARGET_LINK_LIBRARIES ( ITK-CPU-MULTIPLYC
  288. ITKBasicFilters ITKCommon ITKIO rt
  289. )
  290. ADD_EXECUTABLE(ITK-CPU-RESCALE
  291. itk-cpu-rescaleintensity.cxx
  292. )
  293. TARGET_LINK_LIBRARIES ( ITK-CPU-RESCALE
  294. ITKBasicFilters ITKCommon ITKIO rt
  295. )
  296. ADD_EXECUTABLE(ITK-CPU-STATISTICS
  297. itk-cpu-statistics.cxx
  298. )
  299. TARGET_LINK_LIBRARIES ( ITK-CPU-STATISTICS
  300. ITKBasicFilters ITKCommon ITKIO rt
  301. )
  302. ADD_EXECUTABLE(ITK-CPU-SUBTRACT
  303. itk-cpu-subtract.cxx
  304. )
  305. TARGET_LINK_LIBRARIES ( ITK-CPU-SUBTRACT
  306. ITKBasicFilters ITKCommon ITKIO rt
  307. )
  308. ADD_EXECUTABLE(ITK-CPU-SUBTRACTC
  309. itk-cpu-subtractc.cxx
  310. )
  311. TARGET_LINK_LIBRARIES ( ITK-CPU-SUBTRACTC
  312. ITKBasicFilters ITKCommon ITKIO rt
  313. )
  314. TARGET_LINK_LIBRARIES ( ITK-CPU-SUBTRACTC
  315. ITKBasicFilters ITKCommon ITKIO rt
  316. )
  317. ADD_EXECUTABLE(ImageCompare ImageCompare.cxx)
  318. TARGET_LINK_LIBRARIES(ImageCompare ITKCommon ITKIO)
  319. # Or compile the cuda code into a shared library.
  320. # Anything other than -D or /D is not passed along to nvcc.
  321. #add_definitions(-DMULTIPLIER=2)
  322. #
  323. ## You can set BUILD_SHARED_LIBS or you can pass STATIC, SHARED, or MODULE to
  324. ## CUDA_ADD_LIBRARY. Remember that BUILD_SHARED_LIBS is only respected by
  325. ## CUDA_ADD_LIBRARY. If you use CUDA_COMPILE or CUDA_WRAP_SRCS you must specify
  326. ## SHARED or STATIC as a parameter.
  327. #set(BUILD_SHARED_LIBS ON)
  328. #set(CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE ON)
  329. #CUDA_ADD_LIBRARY(test_lib
  330. # test_lib.cu
  331. # external_dependency.h
  332. # # SHARED
  333. # # STATIC
  334. # OPTIONS "-DSTUFF=blah blah"
  335. # RELEASE --use_fast_math -DNDEBUG
  336. # DEBUG -g -DDEBUG
  337. # )
  338. #
  339. ## Then link the shared library to another executable.
  340. #ADD_EXECUTABLE(lib_example
  341. # main_for_lib.cc
  342. # )
  343. #
  344. ## Specify the dependency.
  345. #TARGET_LINK_LIBRARIES(lib_example
  346. # test_lib
  347. # )
  348. #
  349. ## Using the CUDA_COMPILE macro
  350. #set(CUDA_ATTACH_VS_BUILD_RULE_TO_CUDA_FILE OFF)
  351. #set(source_files test_bin.cu)
  352. #CUDA_COMPILE(CUDA_FILES test_bin.cu)
  353. #
  354. #ADD_EXECUTABLE(cuda_compile_example
  355. # ${CUDA_FILES}
  356. # ${source_files}
  357. # main.cc
  358. # external_dependency.h
  359. # )
  360. #TARGET_LINK_LIBRARIES(cuda_compile_example
  361. # ${CUDA_LIBRARIES}
  362. # )
  363. #
  364. ## Generating PTX files.
  365. ## CUDA_COMPILE_PTX(PTX_FILES CUDA_FILES test_bin.cu)
  366. #
  367. ## Add a special target to clean nvcc generated files.
  368. #CUDA_BUILD_CLEAN_TARGET()
  369. #
  370. ADD_TEST(CPU-MULTIPLY ${TEST_COMMAND}
  371. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-MULTIPLY ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_mult.mhd 1 0
  372. )
  373. ADD_TEST(CPU-MULTIPLYC ${TEST_COMMAND}
  374. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-MULTIPLYC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_multc.mhd 11 1
  375. )
  376. ADD_TEST(CPU-ABS ${TEST_COMMAND}
  377. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-ABS ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_abs.mhd 1 1
  378. )
  379. ADD_TEST(CPU-BT ${TEST_COMMAND}
  380. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-BINARYT ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_bt.mhd 1 100
  381. )
  382. ADD_TEST(CPU-DIVIDE ${TEST_COMMAND}
  383. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-DIVIDE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_div.mhd 1 0
  384. )
  385. ADD_TEST(CPU-DIVIDEC ${TEST_COMMAND}
  386. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-DIVIDEC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_dividec.mhd 11 1
  387. )
  388. ADD_TEST(CPU-MAXIMUM ${TEST_COMMAND}
  389. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-MAXIMUM ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_max.mhd 1 1
  390. )
  391. ADD_TEST(CPU-MINIMUM ${TEST_COMMAND}
  392. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-MINIMUM ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_min.mhd 1 1
  393. )
  394. ADD_TEST(CPU-SUBTRACT ${TEST_COMMAND}
  395. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-SUBTRACT ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_sub.mhd 1 1
  396. )
  397. ADD_TEST(CPU-SUBTRACTC ${TEST_COMMAND}
  398. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-SUBTRACTC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_subc.mhd 11 1
  399. )
  400. ADD_TEST(CPU-ADD ${TEST_COMMAND}
  401. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-ADD ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_add.mhd 1 1
  402. )
  403. ADD_TEST(CPU-ADDC ${TEST_COMMAND}
  404. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-ADDC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_addc.mhd 11 1
  405. )
  406. ADD_TEST(CPU-RESCALE ${TEST_COMMAND}
  407. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-RESCALE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_rescale.mhd 1 50 150
  408. )
  409. ADD_TEST(CPU-STATS ${TEST_COMMAND}
  410. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-STATISTICS ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_stats.mhd
  411. )
  412. ADD_TEST(CPU-MEAN ${TEST_COMMAND}
  413. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-MEAN ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_mean_11.mhd 11
  414. )
  415. ADD_TEST(CPU-ERODE ${TEST_COMMAND}
  416. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-ERODE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_erode_11.mhd 11
  417. )
  418. ADD_TEST(CPU-DILATE ${TEST_COMMAND}
  419. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-DILATE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_dilate_11.mhd 11
  420. )
  421. ADD_TEST(CPU-CLOSE ${TEST_COMMAND}
  422. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-CLOSE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_close_11.mhd 11
  423. )
  424. ADD_TEST(CPU-OPEN ${TEST_COMMAND}
  425. ${CMAKE_CURRENT_BINARY_DIR}/ITK-CPU-OPEN ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_open_11.mhd 11
  426. )
  427. IF (CITK_USE_CUDA)
  428. ADD_TEST(GPU-MULTIPLY ${TEST_COMMAND}
  429. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MULTIPLY ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_mult.mhd 1 1
  430. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_mult.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_mult.mhd
  431. )
  432. ADD_TEST(GPU-MULTIPLY2 ${TEST_COMMAND}
  433. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MULTIPLY ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_mult2.mhd 1 0
  434. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_mult2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_mult.mhd
  435. )
  436. ADD_TEST(GPU-MULTIPLYC ${TEST_COMMAND}
  437. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MULTIPLYC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_multc.mhd 11 1
  438. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_multc.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_multc.mhd
  439. )
  440. ADD_TEST(GPU-MULTIPLYC2 ${TEST_COMMAND}
  441. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MULTIPLYC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_multc2.mhd 11 0
  442. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_multc2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_multc.mhd
  443. )
  444. ADD_TEST(GPU-ABS ${TEST_COMMAND}
  445. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ABS ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_abs.mhd 1 1
  446. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_abs.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_abs.mhd
  447. )
  448. ADD_TEST(GPU-ABS2 ${TEST_COMMAND}
  449. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ABS ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_abs2.mhd 1 0
  450. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_abs2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_abs.mhd
  451. )
  452. ADD_TEST(GPU-BT ${TEST_COMMAND}
  453. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-BINARYT ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_bt.mhd 1 100
  454. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_bt.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_bt.mhd
  455. )
  456. ADD_TEST(GPU-BT2 ${TEST_COMMAND}
  457. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-BINARYT ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_bt2.mhd 0 100
  458. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_bt2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_bt.mhd
  459. )
  460. ADD_TEST(GPU-DIVIDE ${TEST_COMMAND}
  461. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-DIVIDE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_div.mhd 1 1
  462. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_div.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_div.mhd
  463. )
  464. ADD_TEST(GPU-DIVIDE2 ${TEST_COMMAND}
  465. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-DIVIDE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_div2.mhd 1 0
  466. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_div2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_div.mhd
  467. )
  468. ADD_TEST(GPU-DIVIDEC ${TEST_COMMAND}
  469. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-DIVIDEC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_dividec.mhd 11 1
  470. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_dividec.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_dividec.mhd
  471. )
  472. ADD_TEST(GPU-DIVIDEC2 ${TEST_COMMAND}
  473. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-DIVIDEC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_dividec2.mhd 11 0
  474. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_dividec2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_dividec.mhd
  475. )
  476. ADD_TEST(GPU-MAXIMUM ${TEST_COMMAND}
  477. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MAXIMUM ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_max.mhd 1 1
  478. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_max.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_max.mhd
  479. )
  480. ADD_TEST(GPU-MAXIMUM2 ${TEST_COMMAND}
  481. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MAXIMUM ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_max2.mhd 1 0
  482. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_max2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_max.mhd
  483. )
  484. ADD_TEST(GPU-MINIMUM ${TEST_COMMAND}
  485. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MINIMUM ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_min.mhd 1 1
  486. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_min.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_min.mhd
  487. )
  488. ADD_TEST(GPU-MINIMUM2 ${TEST_COMMAND}
  489. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MINIMUM ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_min2.mhd 1 0
  490. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_min2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_min.mhd
  491. )
  492. ADD_TEST(GPU-SUBTRACT ${TEST_COMMAND}
  493. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-SUBTRACT ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_sub.mhd 1 1
  494. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_sub.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_sub.mhd
  495. )
  496. ADD_TEST(GPU-SUBTRACT2 ${TEST_COMMAND}
  497. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-SUBTRACT ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead2.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_sub2.mhd 1 0
  498. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_sub2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_sub.mhd
  499. )
  500. ADD_TEST(GPU-SUBTRACTC ${TEST_COMMAND}
  501. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-SUBTRACTC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_subc.mhd 11 1
  502. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_subc.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_subc.mhd
  503. )
  504. ADD_TEST(GPU-SUBTRACTC2 ${TEST_COMMAND}
  505. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-SUBTRACTC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_subc2.mhd 11 0
  506. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_subc2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_subc.mhd
  507. )
  508. ADD_TEST(GPU-ADD ${TEST_COMMAND}
  509. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ADD ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_add.mhd 1 1
  510. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_add.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_add.mhd
  511. )
  512. ADD_TEST(GPU-ADD2 ${TEST_COMMAND}
  513. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ADD ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_add2.mhd 1 0
  514. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_add2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_add.mhd
  515. )
  516. ADD_TEST(GPU-ADDC ${TEST_COMMAND}
  517. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ADDC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_addc.mhd 11 1
  518. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_addc.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_addc.mhd
  519. )
  520. ADD_TEST(GPU-ADDC2 ${TEST_COMMAND}
  521. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ADDC ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_addc2.mhd 11 0
  522. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_addc2.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_addc.mhd
  523. )
  524. ADD_TEST(GPU-RESCALE ${TEST_COMMAND}
  525. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-RESCALE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_rescale.mhd 1 50 150
  526. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_rescale.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_rescale.mhd
  527. )
  528. ADD_TEST(GPU-STATS ${TEST_COMMAND}
  529. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-STATISTICS ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_stats.mhd
  530. #--compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_rescale.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_rescale.mhd
  531. )
  532. ADD_TEST(GPU-MEAN ${TEST_COMMAND}
  533. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-MEAN ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_mean_11.mhd 11
  534. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_mean_11.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_mean_11.mhd
  535. )
  536. ADD_TEST(GPU-ERODE ${TEST_COMMAND}
  537. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-ERODE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_erode_11.mhd 11
  538. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_erode_11.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_erode_11.mhd
  539. )
  540. ADD_TEST(GPU-DILATE ${TEST_COMMAND}
  541. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-DILATE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_dilate_11.mhd 11
  542. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_dilate_11.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_dilate_11.mhd
  543. )
  544. ADD_TEST(GPU-CLOSE ${TEST_COMMAND}
  545. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-CLOSE ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_close_11.mhd 11
  546. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_close_11.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_close_11.mhd
  547. )
  548. ADD_TEST(GPU-OPEN ${TEST_COMMAND}
  549. ${CMAKE_CURRENT_BINARY_DIR}/ITK-GPU-OPEN ${CMAKE_CURRENT_SOURCE_DIR}/images/cthead1.png ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_open_11.mhd 11
  550. --compare ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/gpu_open_11.mhd ${CMAKE_CURRENT_SOURCE_DIR}/TestOutputs/cpu_open_11.mhd
  551. )
  552. ENDIF (CITK_USE_CUDA)