Commit Graph

85 Commits

Author SHA1 Message Date
Yashas Samaga B L
ae279966c2 Merge pull request #14660 from YashasSamaga:dnn-cuda-build
add cuDNN dependency and setup build for cuda4dnn (#14660)

* update cmake for cuda4dnn

- Adds FindCUDNN
- Adds new options:
   * WITH_CUDA
   * OPENCV_DNN_CUDA
- Adds CUDA4DNN preprocessor symbol for the DNN module

* FIX: append EXCLUDE_CUDA instead of overwrite

* remove cuDNN dependency for user apps

* fix unused variable warning
2019-06-02 14:47:15 +03:00
Alexander Alekhin
7fb70e1701 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-18 19:07:43 +00:00
Peter J. Stieber
50ef9830e2 Added Turing to the _generations list. 2018-12-18 08:52:15 -08:00
Alexander Alekhin
0c16d8f6c3 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-12-13 15:12:26 +03:00
Tomoaki Teshima
3e710d8eec use correct CC value for Jetson Xavier 2018-12-13 13:35:19 +09:00
Alexander Alekhin
465ae048a0 Merge pull request #12887 from alalek:fix_cmake_conditions 2018-10-24 13:17:54 +00:00
Alexander Alekhin
d6a8e08acc cmake: fix variable expand in CMake conditions 2018-10-21 15:02:40 +00:00
Alexander Alekhin
9c23f2f1a6 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-10-20 11:37:54 +00:00
jasjuang
a66fd527b0 add support for latest Turing gpu and cuda 10 2018-10-15 10:40:24 -07:00
Hamdi Sahloul
0e80f56e44 Bugfix: Detect CUDA archs for Windows 2018-08-16 17:10:08 +09:00
Alexander Alekhin
4eb2966559 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-08-07 20:12:10 +03:00
Sacha
9ff4475695 Support WITH_CUDA with clang compiler. 2018-08-03 16:42:28 +10:00
Alexander Alekhin
4560909a5e Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-07-17 19:27:48 +03:00
Alexander Alekhin
e79c729b20 CUDA: allow to use external FindCUDA from modern CMake
CMake 3.9.0+ is required
2018-07-12 14:33:14 +03:00
Alexander Alekhin
5e68f35500 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-22 19:02:01 +03:00
Alexander Alekhin
d4a8a9ee96 cmake: filter NVCC compiler flags (Wimplicit-fallthrough, OPENCV_CUDA_NVCC_FILTEROUT_OPTIONS)
issue 11552
2018-05-21 17:54:11 +03:00
Alexander Alekhin
000a13b6a3 Merge remote-tracking branch 'upstream/3.4' into merge-3.4 2018-05-03 14:30:38 +00:00
Alexander Alekhin
2a330e3006 cuda: eliminate warnings 2018-04-26 15:06:59 +03:00
Tomoaki Teshima
779a42678d fix CUDA build crash
* add --std=c++11 flag to nvcc definition
  * remove not used abs functions
2018-04-11 17:19:09 +09:00
Alexander Alekhin
08941b7890 cmake: avoid amending of CMAKE_COMPILER_IS_[GNUCXX|CLANGCXX|CCACHE] vars
- Recommended compiler checks:
  - GCC: CV_GCC
  - Clang: CV_CLANG
- fixed problem with CMAKE_CXX_COMPILER_ID=Clang/AppleClang mess on MacOSX
  Details: cmake --help-policy CMP0025
- do not declare Clang as GCC compiler
2018-03-27 16:16:59 +03:00
Balint Cristian
0c4e294504 Enable CUDA_NVCC_FLAGS at arch detect step. 2017-08-31 12:57:43 +03:00
Boris Fomitchev
c48807c383 Merge pull request #9418 from borisfom:cuda9
CUDA9 build fixed, added detection (#9418)

* CUDA9 build fixed, added detection

* Replacing deprecated __shfl_xxx with __shfl_sync, fixing bogus CUDA9 warnings
2017-08-24 07:11:44 +00:00
Alexander Alekhin
f694192878 cmake: use CMAKE_CXX_COMPILER_VERSION (CMake 2.8.8+)
- '-fvisibility' flag was updated
- PVAPI library detection was changed
2017-08-21 18:06:40 +03:00
Tomoaki Teshima
9cd42650dc build with cc 6.2 on Jetson TX2 2017-04-10 22:19:17 +09:00
Alexander Alekhin
0724d13bcd build: cuda warnings 2016-12-04 03:10:05 +03:00
StevenPuttemans
fa32abe5f3 add 5.2 and 6.1 compute capability support 2016-10-14 10:14:12 +02:00
Stephane Thiell
3335963987 cmake: add support for Nvidia GPU Tesla K80 2016-09-01 12:07:32 -07:00
Vladislav Vinogradov
d76f258aeb update CUDA architecture flags initialization
* remove obsolete paths
* add Pascal arch support
2016-07-13 13:03:16 +03:00
Guy Sheffer
0a48b9ae77 Fix #6500 cmake bug that adds D_FORCE_INLINES to NVCC 2016-05-26 13:45:50 +03:00
atinfinity
ed8368fed7 fixed to use NVCUVID in 'cudacodec' module. 2016-01-31 01:28:15 +09:00
Andreas Franek
01c5a0ed12 Simplifies cross compilation with CUDA for ARM boards. CUDA arch is set for all ARM targets, --unresolved-symbols=ignore-in-shared-libs is set when cross-compiling for ARM and FindCUDA.cmake was adjusted to find shared library stubs within the CUDA toolkit. 2015-11-03 12:30:34 +01:00
Alexander Smorkalov
1df0f1da97 Precise default CUDA version for Tegra X1 chips. 2015-05-30 23:30:56 +02:00
Vadim Pisarevsky
8e37a693e5 Merge pull request #3758 from ilya-lavrenov:aarch64 2015-03-02 10:50:31 +00:00
Quentin Minster
98d7e52b0a Update OpenCVDetectCUDA.cmake
Add check for CUDA version >= 7.0 (currently in RC1), which drops support for arches 1.x.
2015-02-27 00:41:31 +01:00
Ilya Lavrenov
c5a80193a8 aarch64 support 2015-02-26 19:43:32 +03:00
Vladislav Vinogradov
e4d0652899 [FindCUDA] improvements for cross-platform build
* improve `CUDA_TARGET_CPU_ARCH` cache initialization,
    allow to override initial value from calling script;
* add `CUDA_TARGET_OS_VARIANT` option to select OS variant;
* add `CUDA_TARGET_TRIPLET` option to select target triplet from
    `${CUDA_TOOLKIT_ROOT_DIR}/targets` folder;
* remove `CUDA_TOOLKIT_TARGET_DIR` option, now it is calculated from
    `CUDA_TARGET_TRIPLET`, the old approach still can be used for compatibility;
* for CUDA 6.5 and newer try to locate static libraries too, because
   in 6.5 toolkit for ARM cross compilation only static libraries are included.
2014-12-23 17:48:18 +03:00
Vladislav Vinogradov
8392296eda remove -fvisibility-inlines-hidden from CUDA compiler flags
it generates warning
2014-08-13 18:08:48 +04:00
Roman Donchenko
cc05493730 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	cmake/OpenCVDetectAndroidSDK.cmake
	cmake/OpenCVGenAndroidMK.cmake
	cmake/OpenCVModule.cmake
	cmake/templates/OpenCV.mk.in
	cmake/templates/OpenCVConfig.cmake.in
	doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.rst
	modules/cudabgsegm/src/cuda/mog.cu
	modules/imgproc/perf/opencl/perf_filters.cpp
	modules/imgproc/src/opencl/filterSep_singlePass.cl
	modules/nonfree/CMakeLists.txt
	modules/nonfree/perf/perf_precomp.hpp
	modules/ocl/perf/perf_haar.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/src/opencl/bgfg_mog.cl
	modules/superres/CMakeLists.txt
	modules/superres/src/btv_l1_cuda.cpp
	modules/superres/src/cuda/btv_l1_gpu.cu
	modules/superres/src/frame_source.cpp
	modules/superres/src/input_array_utility.cpp
	modules/superres/src/optical_flow.cpp
	modules/superres/src/precomp.hpp
	samples/gpu/CMakeLists.txt
	samples/gpu/brox_optical_flow.cpp
	samples/gpu/super_resolution.cpp
2014-03-24 19:02:16 +04:00
Alexander Smorkalov
284b2fc1e7 Cut path to CUDA libraries to prevent generation of OpenCVModules.cmake with abs path. 2014-03-19 18:47:32 +04:00
Roman Donchenko
48432502b6 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	cmake/OpenCVDetectCUDA.cmake
	doc/tutorials/introduction/linux_gcc_cmake/linux_gcc_cmake.rst
	modules/core/CMakeLists.txt
	modules/features2d/perf/opencl/perf_brute_force_matcher.cpp
	modules/highgui/src/grfmt_tiff.cpp
	modules/imgproc/src/clahe.cpp
	modules/imgproc/src/moments.cpp
	modules/nonfree/CMakeLists.txt
	modules/ocl/perf/perf_ml.cpp
	modules/superres/CMakeLists.txt
2014-02-25 15:02:24 +04:00
Vladislav Vinogradov
8b8c368148 fixed two warnings in gpu sources (-Wshadow, -Wno-sign-promo) 2014-02-14 17:56:03 +04:00
Roman Donchenko
d58cd9851f Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	CMakeLists.txt
	cmake/OpenCVDetectCUDA.cmake
	doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.rst
	modules/core/src/cmdparser.cpp
	modules/gpu/CMakeLists.txt
	modules/gpu/doc/introduction.rst
	modules/gpu/perf/perf_video.cpp
	modules/highgui/doc/reading_and_writing_images_and_video.rst
	modules/ocl/src/cl_context.cpp
	modules/video/include/opencv2/video/background_segm.hpp
	samples/cpp/image_sequence.cpp
	samples/cpp/tutorial_code/ImgTrans/HoughCircle_Demo.cpp
	samples/python/chessboard.py
	samples/python/cvutils.py
	samples/python/demhist.py
	samples/python/dft.py
	samples/python/distrans.py
	samples/python/edge.py
	samples/python/ffilldemo.py
	samples/python/fitellipse.py
	samples/python/houghlines.py
	samples/python/inpaint.py
	samples/python/logpolar.py
	samples/python/morphology.py
	samples/python/numpy_array.py
	samples/python/watershed.py
2013-12-03 17:35:21 +04:00
Vladislav Vinogradov
81acc5e73e added -Xptxas;-dlcm=ca and -target-os-variant=Android to nvcc flags 2013-11-28 10:00:55 +04:00
Vladislav Vinogradov
26cb0ce1d5 fixed compilation warnings in .cu files 2013-11-28 10:00:48 +04:00
Vladislav Vinogradov
20641b4a0b fixed CC arch/pts for android (used sm_32) 2013-11-28 10:00:47 +04:00
Roman Donchenko
9c83f6c4fb Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	cmake/OpenCVDetectCUDA.cmake
	modules/core/include/opencv2/core/version.hpp
	modules/cudacodec/src/ffmpeg_video_source.cpp
	modules/gpu/src/video_writer.cpp
	modules/highgui/test/test_ffmpeg.cpp
	modules/highgui/test/test_video_io.cpp
	modules/highgui/test/test_video_pos.cpp
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/ocl/include/opencv2/ocl/private/util.hpp
	modules/ocl/src/arithm.cpp
	modules/ocl/src/blend.cpp
	modules/ocl/src/canny.cpp
	modules/ocl/src/cl_operations.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/src/haar.cpp
	modules/ocl/src/imgproc.cpp
	modules/ocl/src/kmeans.cpp
	modules/ocl/src/moments.cpp
	modules/ocl/src/safe_call.hpp
	modules/ocl/src/split_merge.cpp
	modules/ocl/test/test_moments.cpp
	samples/ocl/squares.cpp
2013-11-05 16:38:23 +04:00
Roman Donchenko
104b14e0e0 Fixed CMake warnings/bugs caused by #1670 and #1714
include() doesn't create a variable scope, so the settings of
CMAKE_MODULE_PATH and CMAKE_FIND_ROOT_PATH_MODE_* were polluting
everything included after OpenCVDetectCUDA.cmake.

Also, FindCUDA includes FindPackageHandleStandardArgs, which includes
CMakeParseArguments, which causes warnings related to policy CMP0017.
Setting it to NEW seems safe enough.
2013-10-30 16:21:50 +04:00
Vladislav Vinogradov
5e75a22559 fixed find package CUDA for cross-compilation
replaced find_host_package with find_package and
set CMAKE_FIND_ROOT_PATH_MODE_LIBRARY to BOTH, because NEVER 
doesn't work for CUDA_CUDA_LIBRARY, which is located in 
/usr/arm-linux-gnueabihf/lib/libcuda.so for ARM
2013-10-30 12:10:35 +04:00
Vladislav Vinogradov
06c1f9a329 added own version of FindCUDA.cmake 2013-10-28 10:09:16 +04:00
Vladislav Vinogradov
e5947f581a fix CUDA 5.5 support (npp, arm cross compilation) in CMake scripts:
The patch was submitted to CMake and might be available
in the next CMake release.

But until we have the fix in CMake we should add workaround in our scripts.
2013-10-24 18:17:36 +04:00