Merge pull request #2952 from cenit/dev/cenit/include

[headers] remove many installed files which should remain private, add more fixes for downstream projects
pull/3348/head
Alexey 6 years ago committed by GitHub
commit 2347913ef1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      .gitignore
  2. 196
      .travis.yml
  3. 345
      CMakeLists.txt
  4. 212
      CMakeSettings.json
  5. 29
      DarknetConfig.cmake.in
  6. 3
      appveyor.yml
  7. 19
      build.ps1
  8. 23
      build.sh
  9. 8
      cmake/Modules/FindCUDNN.cmake
  10. 8
      include/darknet.h
  11. 6
      src/activation_kernels.cu
  12. 6
      src/avgpool_layer_kernels.cu
  13. 9
      src/blas_kernels.cu
  14. 6
      src/col2im_kernels.cu
  15. 6
      src/convolutional_kernels.cu
  16. 6
      src/crop_layer_kernels.cu
  17. 6
      src/deconvolutional_kernels.cu
  18. 6
      src/dropout_layer_kernels.cu
  19. 6
      src/maxpool_layer_kernels.cu

7
.gitignore vendored

@ -7,6 +7,7 @@
*.so
*.exe
*.dll
*.lib
mnist/
data/
caffe/
@ -34,6 +35,10 @@ Thumbs.db
.vs/
.vscode/
# Managed by CMake
src/version.h
# Build artifacts
lib/
include/
share/
include/darknet/

@ -1,4 +1,8 @@
language: cpp
cache:
timeout: 1000
directories:
- $HOME/vcpkg
matrix:
include:
@ -14,7 +18,7 @@ matrix:
compiler: gcc
name: macOS - native gcc (llvm backend) - opencv@2
env:
- OpenCV_DIR="/usr/local/Cellar/opencv@2/2.4.13.7_2/"
- OpenCV_DIR="/usr/local/opt/opencv@2/"
- additional_defines="-DOpenCV_DIR=${OpenCV_DIR}"
- MATRIX_EVAL="brew install opencv@2"
@ -22,7 +26,7 @@ matrix:
compiler: gcc
name: macOS - native gcc (llvm backend) - opencv@3
env:
- OpenCV_DIR="/usr/local/Cellar/opencv@3/3.4.5/"
- OpenCV_DIR="/usr/local/opt/opencv@3/"
- additional_defines="-DOpenCV_DIR=${OpenCV_DIR}"
- MATRIX_EVAL="brew install opencv@3"
@ -44,7 +48,7 @@ matrix:
compiler: clang
name: macOS - native clang - opencv@2
env:
- OpenCV_DIR="/usr/local/Cellar/opencv@2/2.4.13.7_2/"
- OpenCV_DIR="/usr/local/opt/opencv@2/"
- additional_defines="-DOpenCV_DIR=${OpenCV_DIR}"
- MATRIX_EVAL="brew install opencv@2"
@ -52,7 +56,7 @@ matrix:
compiler: clang
name: macOS - native clang - opencv@3
env:
- OpenCV_DIR="/usr/local/Cellar/opencv@3/3.4.5/"
- OpenCV_DIR="/usr/local/opt/opencv@3/"
- additional_defines="-DOpenCV_DIR=${OpenCV_DIR}"
- MATRIX_EVAL="brew install opencv@3"
@ -63,6 +67,15 @@ matrix:
- additional_defines=""
- MATRIX_EVAL="brew install opencv"
- os: osx
name: macOS - vcpkg
osx_image: xcode10.1
env:
- additional_defines=""
- MATRIX_EVAL="brew install gcc && unset CC && unset CXX"
- USE_VCPKG=true
- VCPKG_DEFINES="-DCMAKE_TOOLCHAIN_FILE=$HOME/vcpkg/scripts/buildsystems/vcpkg.cmake"
- os: linux
compiler: clang
name: ubuntu 14.04 - native clang
@ -83,7 +96,7 @@ matrix:
- clang-3.6
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.6 && CXX=clang++-3.6"
- MATRIX_EVAL="export CC=clang-3.6 && export CXX=clang++-3.6"
- os: linux
compiler: clang
@ -97,7 +110,7 @@ matrix:
- clang-3.8
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
- MATRIX_EVAL="export CC=clang-3.8 && export CXX=clang++-3.8"
- os: linux
compiler: clang
@ -111,7 +124,7 @@ matrix:
- clang-3.9
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9"
- MATRIX_EVAL="export CC=clang-3.9 && export CXX=clang++-3.9"
- os: linux
compiler: clang
@ -125,7 +138,7 @@ matrix:
- clang-4.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0"
- MATRIX_EVAL="export CC=clang-4.0 && export CXX=clang++-4.0"
- os: linux
compiler: clang
@ -139,7 +152,7 @@ matrix:
- clang-5.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
- MATRIX_EVAL="export CC=clang-5.0 && export CXX=clang++-5.0"
- os: linux
compiler: clang
@ -154,7 +167,7 @@ matrix:
- clang-6.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0"
- MATRIX_EVAL="export CC=clang-6.0 && export CXX=clang++-6.0"
- os: linux
compiler: gcc
@ -178,7 +191,7 @@ matrix:
- g++-4.9
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9"
- MATRIX_EVAL="export CC=gcc-4.9 && export CXX=g++-4.9"
- os: linux
compiler: gcc
@ -192,7 +205,7 @@ matrix:
- g++-5
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- MATRIX_EVAL="export CC=gcc-5 && export CXX=g++-5"
- os: linux
compiler: gcc
@ -206,7 +219,7 @@ matrix:
- g++-6
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
- MATRIX_EVAL="export CC=gcc-6 && export CXX=g++-6"
- os: linux
compiler: gcc
@ -220,7 +233,7 @@ matrix:
- g++-7
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
- MATRIX_EVAL="export CC=gcc-7 && export CXX=g++-7"
- os: linux
compiler: gcc
@ -234,7 +247,23 @@ matrix:
- g++-8
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
- MATRIX_EVAL="export CC=gcc-8 && export CXX=g++-8"
- os: linux
compiler: gcc
name: ubuntu 14.04 - gcc@8.0 - vcpkg
addons:
apt:
update: true
sources:
- ubuntu-toolchain-r-test
packages:
- g++-8
env:
- additional_defines=""
- USE_VCPKG=true
- VCPKG_DEFINES="-DCMAKE_TOOLCHAIN_FILE=$HOME/vcpkg/scripts/buildsystems/vcpkg.cmake"
- MATRIX_EVAL="export CC=gcc-8 && export CXX=g++-8"
- os: linux
compiler: clang
@ -259,7 +288,7 @@ matrix:
- clang-3.6
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.6 && CXX=clang++-3.6"
- MATRIX_EVAL="export CC=clang-3.6 && export CXX=clang++-3.6"
- os: linux
compiler: clang
@ -274,7 +303,7 @@ matrix:
- clang-3.8
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
- MATRIX_EVAL="export CC=clang-3.8 && export CXX=clang++-3.8"
- os: linux
compiler: clang
@ -289,7 +318,7 @@ matrix:
- clang-3.9
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9"
- MATRIX_EVAL="export CC=clang-3.9 && export CXX=clang++-3.9"
- os: linux
compiler: clang
@ -304,7 +333,7 @@ matrix:
- clang-4.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0"
- MATRIX_EVAL="export CC=clang-4.0 && export CXX=clang++-4.0"
- os: linux
compiler: clang
@ -319,7 +348,7 @@ matrix:
- clang-5.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
- MATRIX_EVAL="export CC=clang-5.0 && export CXX=clang++-5.0"
- os: linux
compiler: clang
@ -335,7 +364,7 @@ matrix:
- clang-6.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0"
- MATRIX_EVAL="export CC=clang-6.0 && export CXX=clang++-6.0"
- os: linux
compiler: gcc
@ -362,7 +391,7 @@ matrix:
- g++-4.9
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9"
- MATRIX_EVAL="export CC=gcc-4.9 && export CXX=g++-4.9"
- os: linux
compiler: gcc
@ -377,7 +406,7 @@ matrix:
- g++-5
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- MATRIX_EVAL="export CC=gcc-5 && export CXX=g++-5"
- os: linux
compiler: gcc
@ -392,7 +421,7 @@ matrix:
- libopencv-dev
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
- MATRIX_EVAL="export CC=gcc-6 && export CXX=g++-6"
- os: linux
compiler: gcc
@ -407,7 +436,7 @@ matrix:
- g++-7
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
- MATRIX_EVAL="export CC=gcc-7 && export CXX=g++-7"
- os: linux
compiler: gcc
@ -422,7 +451,7 @@ matrix:
- g++-8
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
- MATRIX_EVAL="export CC=gcc-8 && export CXX=g++-8"
- os: linux
compiler: clang
@ -451,7 +480,7 @@ matrix:
- clang-3.6
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.6 && CXX=clang++-3.6"
- MATRIX_EVAL="export CC=clang-3.6 && export CXX=clang++-3.6"
- os: linux
compiler: clang
@ -467,7 +496,7 @@ matrix:
- clang-3.8
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8"
- MATRIX_EVAL="export CC=clang-3.8 && export CXX=clang++-3.8"
- os: linux
compiler: clang
@ -483,7 +512,7 @@ matrix:
- clang-3.9
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9"
- MATRIX_EVAL="export CC=clang-3.9 && export CXX=clang++-3.9"
- os: linux
compiler: clang
@ -499,7 +528,7 @@ matrix:
- clang-4.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0"
- MATRIX_EVAL="export CC=clang-4.0 && export CXX=clang++-4.0"
- os: linux
compiler: clang
@ -515,7 +544,7 @@ matrix:
- clang-5.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
- MATRIX_EVAL="export CC=clang-5.0 && export CXX=clang++-5.0"
- os: linux
compiler: clang
@ -532,7 +561,7 @@ matrix:
- clang-6.0
env:
- additional_defines=""
- MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0"
- MATRIX_EVAL="export CC=clang-6.0 && export CXX=clang++-6.0"
- os: linux
compiler: gcc
@ -562,7 +591,7 @@ matrix:
- g++-4.9
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9"
- MATRIX_EVAL="export CC=gcc-4.9 && export CXX=g++-4.9"
- os: linux
compiler: gcc
@ -578,7 +607,7 @@ matrix:
- g++-5
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- MATRIX_EVAL="export CC=gcc-5 && export CXX=g++-5"
- os: linux
compiler: gcc
@ -594,7 +623,7 @@ matrix:
- libopencv-dev
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
- MATRIX_EVAL="export CC=gcc-6 && export CXX=g++-6"
- os: linux
compiler: gcc
@ -610,7 +639,7 @@ matrix:
- g++-7
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
- MATRIX_EVAL="export CC=gcc-7 && export CXX=g++-7"
- os: linux
compiler: gcc
@ -626,7 +655,7 @@ matrix:
- g++-8
env:
- additional_defines=""
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
- MATRIX_EVAL="export CC=gcc-8 && export CXX=g++-8"
- os: linux
compiler: clang
@ -639,6 +668,8 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
@ -654,8 +685,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=clang-3.6 && CXX=clang++-3.6 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=clang-3.6 && export CXX=clang++-3.6 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: clang
@ -671,8 +704,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=clang-3.8 && CXX=clang++-3.8 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=clang-3.8 && export CXX=clang++-3.8 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: clang
@ -688,8 +723,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=clang-3.9 && export CXX=clang++-3.9 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: clang
@ -705,8 +742,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=clang-4.0 && export CXX=clang++-4.0 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: clang
@ -722,8 +761,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=clang-5.0 && export CXX=clang++-5.0 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: clang
@ -740,8 +781,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=clang-6.0 && CXX=clang++-6.0 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=clang-6.0 && export CXX=clang++-6.0 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: gcc
@ -754,6 +797,8 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
@ -771,8 +816,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=gcc-4.9 && CXX=g++-4.9 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=gcc-4.9 && export CXX=g++-4.9 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: gcc
@ -788,8 +835,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=gcc-5 && CXX=g++-5 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=gcc-5 && export CXX=g++-5 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: gcc
@ -805,8 +854,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=gcc-6 && CXX=g++-6 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=gcc-6 && export CXX=g++-6 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: gcc
@ -822,8 +873,10 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=gcc-7 && CXX=g++-7 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=gcc-7 && export CXX=g++-7 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: gcc
@ -839,27 +892,64 @@ matrix:
env:
- additional_defines=""
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="CC=gcc-8 && CXX=g++-8 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- MATRIX_EVAL="export CC=gcc-8 && export CXX=g++-8 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
- os: linux
compiler: gcc
name: ubuntu 14.04 - gcc@8.0 - CUDA 10 - vcpkg
addons:
apt:
update: true
sources:
- ubuntu-toolchain-r-test
packages:
- g++-8
env:
- additional_defines=""
- USE_VCPKG=true
- VCPKG_DEFINES="-DCMAKE_TOOLCHAIN_FILE=$HOME/vcpkg/scripts/buildsystems/vcpkg.cmake"
- CUDACXX=/usr/local/cuda-10.0/bin/nvcc
- CUDA_PATH=/usr/local/cuda-10.0
- CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-10.0
- LD_LIBRARY_PATH="/usr/local/cuda-10.0/lib64:/usr/local/cuda-10.0/lib64/stubs:${LD_LIBRARY_PATH}"
- MATRIX_EVAL="export CC=gcc-8 && export CXX=g++-8 && wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/7fa2af80.pub && sudo dpkg -i cuda-repo-ubuntu1404_10.0.130-1_amd64.deb && wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1404/x86_64/nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo dpkg -i nvidia-machine-learning-repo-ubuntu1404_4.0-2_amd64.deb && sudo apt-get -y update && sudo apt-get install -y --no-install-recommends cuda-compiler-10-0 cuda-libraries-dev-10-0 cuda-driver-dev-10-0 cuda-cudart-dev-10-0 cuda-cublas-dev-10-0 cuda-curand-dev-10-0 && sudo apt-get install -y --no-install-recommends libcudnn7-dev && sudo ln -s /usr/local/cuda-10.0/lib64/stubs/libcuda.so /usr/local/cuda-10.0/lib64/stubs/libcuda.so.1"
# allow_failures:
# - name: macOS - vcpkg
# - name: ubuntu 14.04 - gcc@8.0 - vcpkg
# - name: ubuntu 14.04 - gcc@8.0 - CUDA 10 - vcpkg
before_install:
- travis_retry eval "${MATRIX_EVAL}"
install:
# CMake upgrade on Linux
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then wget --no-check-certificate https://github.com/Kitware/CMake/releases/download/v3.13.4/cmake-3.13.4-Linux-x86_64.tar.gz ;fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then tar -xzf cmake-3.13.4-Linux-x86_64.tar.gz ;fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then export PATH=$PWD/cmake-3.13.4-Linux-x86_64/bin:$PATH ;fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]] ; then wget --no-check-certificate https://github.com/Kitware/CMake/releases/download/v3.13.4/cmake-3.13.4-Linux-x86_64.tar.gz ; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]] ; then tar -xzf cmake-3.13.4-Linux-x86_64.tar.gz ; fi
- if [[ "$TRAVIS_OS_NAME" == "linux" ]] ; then export PATH=$PWD/cmake-3.13.4-Linux-x86_64/bin:$PATH ; fi
- pushd $HOME
- if [ -d "$HOME/vcpkg/.git" ] ; then echo vcpkg cached ; else rm -rf vcpkg ; git clone https://github.com/Microsoft/vcpkg ; fi
- cd vcpkg
- git pull
- if [ "${USE_VCPKG}" = true ] ; then ./bootstrap-vcpkg.sh ; fi
- if [ "${USE_VCPKG}" = true ] ; then travis_wait ./vcpkg install stb pthreads ; fi
#- if [ "${USE_VCPKG}" = true ] && [[ ! -z "${CUDACXX}" ]] ; then travis_wait 45 ./vcpkg install opencv[ffmpeg,cuda] --recurse; fi
#- if [ "${USE_VCPKG}" = true ] && [[ -z "${CUDACXX}" ]] ; then travis_wait 45 ./vcpkg install opencv[ffmpeg] --recurse; fi
- if [ "${USE_VCPKG}" = true ] ; then travis_wait 45 ./vcpkg install opencv[ffmpeg] ; fi
- popd
before_script:
- echo ${additional_defines}
- mkdir build_debug
- cd build_debug
- cmake .. -DCMAKE_BUILD_TYPE="Debug" ${additional_defines}
- cmake .. -DCMAKE_BUILD_TYPE="Debug" ${VCPKG_DEFINES} ${additional_defines}
- cd ..
- mkdir build_release
- cd build_release
- cmake .. -DCMAKE_BUILD_TYPE="Release" ${additional_defines}
- cmake .. -DCMAKE_BUILD_TYPE="Release" ${VCPKG_DEFINES} ${additional_defines}
- cd ..
script:

@ -6,7 +6,7 @@ set(Darknet_PATCH_VERSION 5)
set(Darknet_VERSION ${Darknet_MAJOR_VERSION}.${Darknet_MINOR_VERSION}.${Darknet_PATCH_VERSION})
set(CMAKE_VERBOSE_MAKEFILE "FALSE" CACHE BOOL "Create verbose makefile")
set(BUILD_SHARED_LIBS "TRUE" CACHE BOOL "Create darklib as a shared library")
set(BUILD_SHARED_LIBS "TRUE" CACHE BOOL "Create dark as a shared library")
if(DEFINED ENV{VCPKG_ROOT} AND NOT DEFINED CMAKE_TOOLCHAIN_FILE)
set(CMAKE_TOOLCHAIN_FILE "$ENV{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake" CACHE STRING "")
@ -30,99 +30,87 @@ set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake/Modules/" ${CMAKE_MODULE_
set(CMAKE_INSTALL_PREFIX "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Install prefix" FORCE)
set(INSTALL_BIN_DIR "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Path where exe and dll will be installed")
set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed")
set(INSTALL_INCLUDE_DIR "include" CACHE PATH "Path where headers will be installed")
set(INSTALL_LIB_DIR "${CMAKE_CURRENT_LIST_DIR}" CACHE PATH "Path where lib will be installed")
set(INSTALL_INCLUDE_DIR "include/darknet" CACHE PATH "Path where headers will be installed")
set(INSTALL_CMAKE_DIR "share/darknet" CACHE PATH "Path where cmake configs will be installed")
# Make relative paths absolute (needed later on)
foreach(p LIB BIN INCLUDE CMAKE)
set(var INSTALL_${p}_DIR)
if(NOT IS_ABSOLUTE "${${var}}")
set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}")
endif()
endforeach()
configure_file(
"${CMAKE_CURRENT_LIST_DIR}/src/version.h.in"
"${CMAKE_CURRENT_LIST_DIR}/src/version.h"
)
set(ENABLE_CUDA "FALSE" CACHE BOOL "Enable CUDA support")
set(ENABLE_CUDNN "FALSE" CACHE BOOL "Enable CUDNN")
set(ENABLE_CUDNN_HALF "FALSE" CACHE BOOL "Enable CUDNN Half precision")
set(ENABLE_CUDA "TRUE" CACHE BOOL "Enable CUDA build")
if(${CMAKE_VERSION} VERSION_LESS "3.8.0")
set(ENABLE_CUDA "FALSE" CACHE BOOL "Enable CUDA build" FORCE)
message(WARNING "To build with CUDA support you need CMake 3.8.0+")
if(${CMAKE_VERSION} VERSION_LESS "3.9.0")
set(ENABLE_CUDA "FALSE" CACHE BOOL "Enable CUDA support" FORCE)
message(WARNING "To build with CUDA support you need CMake 3.9.0+")
else()
include(CheckLanguage)
check_language(CUDA)
if(CMAKE_CUDA_COMPILER)
set(CUDA_ARCHITECTURES "Auto" CACHE STRING "\"Auto\" detects local machine GPU compute arch at runtime, \"Common\" and \"All\" cover common and entire subsets of architectures, \"Names\" is a list of architectures to enable by name, \"Numbers\" is a list of compute capabilities (version number) to enable")
set_property(CACHE CUDA_ARCHITECTURES PROPERTY STRINGS "Auto" "Common" "All" "Kepler Maxwell Kepler+Tegra Maxwell+Tegra Pascal" "3.0 7.5")
enable_language(CUDA)
else()
set(ENABLE_CUDA "FALSE" CACHE BOOL "Enable CUDA build" FORCE)
find_package(CUDA REQUIRED)
if(CUDA_VERSION VERSION_LESS "9.0")
message(STATUS "Unsupported CUDA version, please upgrade to CUDA 9+. Disabling CUDA support")
else()
set(ENABLE_CUDA "TRUE" CACHE BOOL "Enable CUDA support" FORCE)
cuda_select_nvcc_arch_flags(CUDA_ARCH_FLAGS ${CUDA_ARCHITECTURES})
message(STATUS "Building with CUDA flags: " "${CUDA_ARCH_FLAGS}")
if ("arch=compute_75,code=sm_75" IN_LIST CUDA_ARCH_FLAGS)
set(ENABLE_CUDNN_HALF "TRUE" CACHE BOOL "Enable CUDNN Half precision" FORCE)
message(STATUS "Your setup supports half precision!")
endif()
endif()
endif()
endif()
set(CUDA_COMPUTE_MODEL_75 "75") #Compute capability for Tesla T4, RTX 2080
set(CUDA_COMPUTE_MODEL_72 "72") #Compute capability for Jetson Xavier
set(CUDA_COMPUTE_MODEL_70 "70") #Compute capability for Tesla V100
set(CUDA_COMPUTE_MODEL_62 "62") #Compute capability for Jetson TX2
set(CUDA_COMPUTE_MODEL_61 "61") #Compute capability for Tesla P40
set(CUDA_COMPUTE_MODEL_60 "60") #Compute capability for Tesla P100
set(CUDA_COMPUTE_MODEL_53 "53") #Compute capability for Jetson TX1
set(CUDA_COMPUTE_MODEL_52 "52") #Compute capability for Tesla M40/M60
set(CUDA_COMPUTE_MODEL_37 "37") #Compute capability for Tesla K80
set(CUDA_COMPUTE_MODEL_35 "35") #Compute capability for Tesla K20/K40
set(CUDA_COMPUTE_MODEL_30 "30") #Compute capability for Tesla K10, Quadro K4000
set(default_cuda_compute_model ${CUDA_COMPUTE_MODEL_30})
if(ENABLE_CUDA AND NOT CUDA_COMPUTE_MODEL)
message(STATUS "Setting the compute model to ${default_cuda_compute_model} as none was specified.")
set(CUDA_COMPUTE_MODEL "${default_cuda_compute_model}" CACHE
STRING "Choose the best compute model supported by your GPU" FORCE)
set_property(CACHE CUDA_COMPUTE_MODEL PROPERTY STRINGS ${CUDA_COMPUTE_MODEL_75} ${CUDA_COMPUTE_MODEL_72} ${CUDA_COMPUTE_MODEL_70} ${CUDA_COMPUTE_MODEL_62} ${CUDA_COMPUTE_MODEL_61} ${CUDA_COMPUTE_MODEL_60} ${CUDA_COMPUTE_MODEL_53} ${CUDA_COMPUTE_MODEL_52} ${CUDA_COMPUTE_MODEL_37} ${CUDA_COMPUTE_MODEL_35} ${CUDA_COMPUTE_MODEL_30})
endif()
if(NOT ENABLE_CUDA)
set(CUDA_COMPUTE_MODEL "0" CACHE STRING "CUDA Compute Model set to 0 because CUDA is missing" FORCE)
endif()
if(USE_INTEGRATED_LIBS)
set(PThreads_windows_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/pthreads CACHE PATH "Path where pthreads for windows can be located")
add_definitions(-D_TIMESPEC_DEFINED)
endif()
set(Stb_DIR ${CMAKE_CURRENT_LIST_DIR}/3rdparty/stb CACHE PATH "Path where Stb image library can be located")
set(CMAKE_DEBUG_POSTFIX d)
add_definitions(-DUSE_CMAKE_LIBS)
set(CMAKE_THREAD_PREFER_PTHREAD ON)
find_package(Threads REQUIRED)
if(MSVC)
set(CMAKE_CXX_FLAGS "/wd4013 /wd4018 /wd4028 /wd4047 /wd4068 /wd4090 /wd4101 /wd4113 /wd4133 /wd4190 /wd4244 /wd4267 /wd4305 /wd4477 /wd4996 /wd4819 /fp:fast ${CMAKE_CXX_FLAGS}")
string(REGEX REPLACE "/O2" "/Ox" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
add_definitions(-D_CRT_RAND_S)
add_definitions(-DNOMINMAX)
add_definitions(-D_USE_MATH_DEFINES)
find_package(PThreads_windows REQUIRED)
endif()
find_package(OpenCV)
find_package(Stb REQUIRED)
if(${CMAKE_VERSION} VERSION_LESS "3.9.0")
message(WARNING "To build with OpenMP support you need CMake 3.9.0+")
else()
find_package(OpenMP)
endif()
if(CMAKE_COMPILER_IS_GNUCC)
set(CMAKE_CXX_FLAGS "-Wno-unused-result -Wno-write-strings ${CMAKE_CXX_FLAGS}")
string(REGEX REPLACE "-O0" "-Og" CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG})
string(REGEX REPLACE "-O3" "-Ofast" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ffp-contract=fast -mavx -mavx2 -msse3 -msse4.1 -msse4.2 -msse4a")
set(ADDITIONAL_CXX_FLAGS "-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings")
set(ADDITIONAL_C_FLAGS "-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -Wno-write-strings")
if(MSVC)
set(ADDITIONAL_CXX_FLAGS "/wd4013 /wd4018 /wd4028 /wd4047 /wd4068 /wd4090 /wd4101 /wd4113 /wd4133 /wd4190 /wd4244 /wd4267 /wd4305 /wd4477 /wd4996 /wd4819 /fp:fast")
set(ADDITIONAL_C_FLAGS "/wd4013 /wd4018 /wd4028 /wd4047 /wd4068 /wd4090 /wd4101 /wd4113 /wd4133 /wd4190 /wd4244 /wd4267 /wd4305 /wd4477 /wd4996 /wd4819 /fp:fast")
set(CMAKE_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} ${CMAKE_CXX_FLAGS}")
set(CMAKE_C_FLAGS "${ADDITIONAL_C_FLAGS} ${CMAKE_C_FLAGS}")
string(REGEX REPLACE "/O2" "/Ox" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
string(REGEX REPLACE "/O2" "/Ox" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
endif()
if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
if (UNIX AND NOT APPLE)
set(CMAKE_CXX_FLAGS "-pthread ${CMAKE_CXX_FLAGS}") #force pthread to avoid bugs in some cmake setups
if(CMAKE_COMPILER_IS_GNUCC OR "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
if ("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
if (UNIX AND NOT APPLE)
set(CMAKE_CXX_FLAGS "-pthread ${CMAKE_CXX_FLAGS}") #force pthread to avoid bugs in some cmake setups
set(CMAKE_C_FLAGS "-pthread ${CMAKE_C_FLAGS}")
endif()
endif()
set(CMAKE_CXX_FLAGS "-Wno-deprecated -Wno-writable-strings ${CMAKE_CXX_FLAGS}")
set(CMAKE_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} ${CMAKE_CXX_FLAGS}")
set(CMAKE_C_FLAGS "${ADDITIONAL_C_FLAGS} ${CMAKE_C_FLAGS}")
string(REGEX REPLACE "-O0" "-Og" CMAKE_CXX_FLAGS_DEBUG ${CMAKE_CXX_FLAGS_DEBUG})
string(REGEX REPLACE "-O3" "-Ofast" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})
string(REGEX REPLACE "-O0" "-Og" CMAKE_C_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
string(REGEX REPLACE "-O3" "-Ofast" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -ffp-contract=fast -mavx -mavx2 -msse3 -msse4.1 -msse4.2 -msse4a")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -ffp-contract=fast -mavx -mavx2 -msse3 -msse4.1 -msse4.2 -msse4a")
endif()
set(ENABLE_OPENCV "TRUE" CACHE BOOL "Enable OpenCV integration")
if(ENABLE_OPENCV)
find_package(OpenCV)
endif()
find_package(Stb REQUIRED)
set(SKIP_USELIB_TRACK "FALSE" CACHE BOOL "Skip building uselib_track" FORCE)
if(OpenCV_FOUND)
if(ENABLE_CUDA AND NOT OpenCV_CUDA_VERSION)
@ -130,56 +118,40 @@ if(OpenCV_FOUND)
message(STATUS " -> darknet is fine for now, but uselib_track has been disabled!")
message(STATUS " -> Please rebuild OpenCV from sources with CUDA support to enable it")
endif()
add_definitions(-DOPENCV)
endif()
if(ENABLE_CUDA)
add_definitions(-DGPU)
if(NOT WIN32)
include_directories("${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES}")
link_directories("${CMAKE_CUDA_IMPLICIT_LINK_DIRECTORIES}")
endif()
if(CUDA_COMPUTE_MODEL VERSION_GREATER_EQUAL ${CUDA_COMPUTE_MODEL_75} AND CMAKE_CUDA_COMPILER_VERSION VERSION_LESS_EQUAL 9)
message(STATUS "CUDA 10 is required for Compute Model 7.5 - Lowering settings to 7.0")
set(CUDA_COMPUTE_MODEL ${CUDA_COMPUTE_MODEL_70})
endif()
find_package(CUDNN)
if(CUDNN_FOUND)
add_definitions(-DCUDNN)
if(CUDA_COMPUTE_MODEL VERSION_GREATER_EQUAL ${CUDA_COMPUTE_MODEL_70})
add_definitions(-DCUDNN_HALF)
message(STATUS "Enabled CUDNN_HALF")
endif()
set(ENABLE_CUDNN "TRUE" CACHE BOOL "Enable CUDNN" FORCE)
endif()
endif()
if(ENABLE_CUDA)
if (MSVC)
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} /DGPU")
if(CUDNN_FOUND)
if(OpenCV_FOUND)
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] -Wno-deprecated-declarations -Xcompiler=\"/wd4028,/wd4190,/wd4244,/wd4267,/wd4305,/wd4477,/wd4996,/wd4819,/DGPU,/DCUDNN,/DOPENCV\" ${CMAKE_CUDA_FLAGS}")
else()
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] -Wno-deprecated-declarations -Xcompiler=\"/wd4028,/wd4190,/wd4244,/wd4267,/wd4305,/wd4477,/wd4996,/wd4819,/DGPU,/DCUDNN\" ${CMAKE_CUDA_FLAGS}")
endif()
else()
if(OpenCV_FOUND)
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] -Wno-deprecated-declarations -Xcompiler=\"/wd4028,/wd4190,/wd4244,/wd4267,/wd4305,/wd4477,/wd4996,/wd4819,/DGPU,/DOPENCV\" ${CMAKE_CUDA_FLAGS}")
else()
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] -Wno-deprecated-declarations -Xcompiler=\"/wd4028,/wd4190,/wd4244,/wd4267,/wd4305,/wd4477,/wd4996,/wd4819,/DGPU\" ${CMAKE_CUDA_FLAGS}")
endif()
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} /DCUDNN")
endif()
if(OpenCV_FOUND)
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} /DOPENCV")
endif()
string(REPLACE " " "," ADDITIONAL_CXX_FLAGS_COMMA_SEPARATED "${ADDITIONAL_CXX_FLAGS}")
set(CUDA_HOST_COMPILER_FLAGS "-Wno-deprecated-declarations -Xcompiler=\"${ADDITIONAL_CXX_FLAGS_COMMA_SEPARATED}\"")
else()
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} -DGPU")
if(CUDNN_FOUND)
if(OpenCV_FOUND)
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] --compiler-options \"-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -fPIC -fopenmp -Ofast -DOPENCV -DGPU -DCUDNN \" ${CMAKE_CUDA_FLAGS}")
else()
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] --compiler-options \"-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -fPIC -fopenmp -Ofast -DGPU -DCUDNN \" ${CMAKE_CUDA_FLAGS}")
endif()
else()
if(OpenCV_FOUND)
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] --compiler-options \"-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -fPIC -fopenmp -Ofast -DOPENCV -DGPU \" ${CMAKE_CUDA_FLAGS}")
else()
set(CMAKE_CUDA_FLAGS "-gencode arch=compute_${CUDA_COMPUTE_MODEL},code=[sm_${CUDA_COMPUTE_MODEL},compute_${CUDA_COMPUTE_MODEL}] --compiler-options \"-Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -Wno-deprecated-declarations -fPIC -fopenmp -Ofast -DGPU \" ${CMAKE_CUDA_FLAGS}")
endif()
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} -DCUDNN")
endif()
if(OpenCV_FOUND)
set(ADDITIONAL_CXX_FLAGS "${ADDITIONAL_CXX_FLAGS} -DOPENCV")
endif()
set(CUDA_HOST_COMPILER_FLAGS "--compiler-options \" ${ADDITIONAL_CXX_FLAGS} -fPIC -fopenmp -Ofast \"")
endif()
string (REPLACE ";" " " CUDA_ARCH_FLAGS_SPACE_SEPARATED "${CUDA_ARCH_FLAGS}")
set(CMAKE_CUDA_FLAGS "${CUDA_ARCH_FLAGS_SPACE_SEPARATED} ${CUDA_HOST_COMPILER_FLAGS} ${CMAKE_CUDA_FLAGS}")
message(STATUS "CMAKE_CUDA_FLAGS: ${CMAKE_CUDA_FLAGS}")
endif()
set(ENABLE_ZED_CAMERA "TRUE" CACHE BOOL "Enable ZED Camera support")
@ -189,7 +161,6 @@ if(ENABLE_CUDA)
if(ZED_FOUND)
include_directories(${ZED_INCLUDE_DIRS})
link_directories(${ZED_LIBRARY_DIR})
add_definitions(-DZED_STEREO)
message(STATUS "ZED SDK enabled")
else()
message(STATUS "ZED SDK not found")
@ -201,20 +172,19 @@ else()
set(ENABLE_ZED_CAMERA "FALSE" CACHE BOOL "Enable ZED Camera support" FORCE)
endif()
set(CMAKE_THREAD_PREFER_PTHREAD ON)
find_package(Threads REQUIRED)
if(MSVC)
find_package(PThreads_windows REQUIRED)
endif()
if(${CMAKE_VERSION} VERSION_LESS "3.9.0")
message(WARNING "To build with OpenMP support you need CMake 3.9.0+")
else()
find_package(OpenMP)
if(OPENMP_FOUND)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
set(DARKNET_INSTALL_INCLUDE_DIR ${INSTALL_INCLUDE_DIR})
# Make relative paths absolute (needed later on)
foreach(p LIB BIN INCLUDE CMAKE)
set(var INSTALL_${p}_DIR)
if(NOT IS_ABSOLUTE "${${var}}")
set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}")
endif()
endif()
endforeach()
configure_file(
"${CMAKE_CURRENT_LIST_DIR}/src/version.h.in"
"${CMAKE_CURRENT_LIST_DIR}/src/version.h"
)
#look for all *.h files in src folder
file(GLOB headers "${CMAKE_CURRENT_LIST_DIR}/src/*.h")
@ -222,12 +192,14 @@ file(GLOB headers "${CMAKE_CURRENT_LIST_DIR}/src/*.h")
list(APPEND headers
${CMAKE_CURRENT_LIST_DIR}/include/darknet.h
)
#remove windows only files, will be re-added if necessary later
list(REMOVE_ITEM headers
${CMAKE_CURRENT_LIST_DIR}/src/gettimeofday.h
${CMAKE_CURRENT_LIST_DIR}/src/getopt.h
)
set(exported_headers ${headers})
#remove windows only files
if(NOT WIN32)
list(REMOVE_ITEM headers
${CMAKE_CURRENT_LIST_DIR}/src/gettimeofday.h
${CMAKE_CURRENT_LIST_DIR}/src/getopt.h
)
endif()
#set(exported_headers ${headers})
#look for all *.c files in src folder
file(GLOB sources "${CMAKE_CURRENT_LIST_DIR}/src/*.c")
@ -240,107 +212,140 @@ list(APPEND sources
list(REMOVE_ITEM sources
${CMAKE_CURRENT_LIST_DIR}/src/darknet.c
)
#remove windows only files, will be re-added if necessary later
list(REMOVE_ITEM sources
${CMAKE_CURRENT_LIST_DIR}/src/gettimeofday.c
${CMAKE_CURRENT_LIST_DIR}/src/getopt.c
)
if(ENABLE_CUDA)
file(GLOB cuda_sources "${CMAKE_CURRENT_LIST_DIR}/src/*.cu")
endif()
if(WIN32)
list(APPEND sources
#remove windows only files
if(NOT WIN32)
list(REMOVE_ITEM sources
${CMAKE_CURRENT_LIST_DIR}/src/gettimeofday.c
${CMAKE_CURRENT_LIST_DIR}/src/getopt.c
)
endif()
list(APPEND headers
${CMAKE_CURRENT_LIST_DIR}/src/gettimeofday.h
${CMAKE_CURRENT_LIST_DIR}/src/getopt.h
)
if(ENABLE_CUDA)
file(GLOB cuda_sources "${CMAKE_CURRENT_LIST_DIR}/src/*.cu")
endif()
set_source_files_properties(${sources} PROPERTIES LANGUAGE CXX)
#set_source_files_properties(${sources} PROPERTIES LANGUAGE CXX)
add_library(darklib ${CMAKE_CURRENT_LIST_DIR}/include/yolo_v2_class.hpp ${CMAKE_CURRENT_LIST_DIR}/src/yolo_v2_class.cpp ${sources} ${headers} ${cuda_sources})
set_target_properties(darklib PROPERTIES POSITION_INDEPENDENT_CODE ON)
add_library(dark ${CMAKE_CURRENT_LIST_DIR}/include/yolo_v2_class.hpp ${CMAKE_CURRENT_LIST_DIR}/src/yolo_v2_class.cpp ${sources} ${headers} ${cuda_sources})
set_target_properties(dark PROPERTIES POSITION_INDEPENDENT_CODE ON)
if(ENABLE_CUDA)
set_target_properties(darklib PROPERTIES CUDA_SEPARABLE_COMPILATION ON)
set_target_properties(dark PROPERTIES CUDA_SEPARABLE_COMPILATION ON)
endif()
target_compile_definitions(darklib PRIVATE LIB_EXPORTS=1)
set_target_properties(darklib PROPERTIES LINKER_LANGUAGE CXX)
if(BUILD_SHARED_LIBS)
target_compile_definitions(dark PRIVATE LIB_EXPORTS=1)
endif()
#set_target_properties(dark PROPERTIES LINKER_LANGUAGE CXX)
if(OpenCV_FOUND AND OpenCV_VERSION VERSION_GREATER "3.0" AND NOT SKIP_USELIB_TRACK)
add_executable(uselib_track ${CMAKE_CURRENT_LIST_DIR}/src/yolo_console_dll.cpp)
target_compile_definitions(uselib_track PRIVATE TRACK_OPTFLOW=1)
set_target_properties(uselib_track PROPERTIES LINKER_LANGUAGE CXX)
target_include_directories(uselib_track PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_link_libraries(uselib_track PRIVATE ${OpenCV_LIBS})
endif()
add_executable(uselib ${CMAKE_CURRENT_LIST_DIR}/src/yolo_console_dll.cpp)
set_target_properties(uselib PROPERTIES LINKER_LANGUAGE CXX)
#set_target_properties(uselib PROPERTIES LINKER_LANGUAGE CXX)
add_executable(darknet ${CMAKE_CURRENT_LIST_DIR}/src/darknet.c ${sources} ${headers} ${cuda_sources})
set_source_files_properties(${CMAKE_CURRENT_LIST_DIR}/src/darknet.c PROPERTIES LANGUAGE CXX)
set_target_properties(darknet PROPERTIES LINKER_LANGUAGE CXX)
#set_source_files_properties(${CMAKE_CURRENT_LIST_DIR}/src/darknet.c PROPERTIES LANGUAGE CXX)
#set_target_properties(darknet PROPERTIES LINKER_LANGUAGE CXX)
target_include_directories(darknet PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:${DARKNET_INSTALL_INCLUDE_DIR}> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_include_directories(dark PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:${DARKNET_INSTALL_INCLUDE_DIR}> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_include_directories(uselib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:${DARKNET_INSTALL_INCLUDE_DIR}> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_include_directories(darknet PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_include_directories(darklib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_include_directories(uselib PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/include> $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src> $<INSTALL_INTERFACE:include> $<BUILD_INTERFACE:${Stb_INCLUDE_DIR}>)
target_compile_definitions(darknet PRIVATE -DUSE_CMAKE_LIBS)
target_compile_definitions(dark PRIVATE -DUSE_CMAKE_LIBS)
target_compile_definitions(uselib PRIVATE -DUSE_CMAKE_LIBS)
if(CUDNN_FOUND)
target_link_libraries(darknet PRIVATE CuDNN::CuDNN)
target_link_libraries(darklib PRIVATE CuDNN::CuDNN)
target_link_libraries(dark PRIVATE CuDNN::CuDNN)
target_compile_definitions(darknet PRIVATE -DCUDNN)
target_compile_definitions(dark PUBLIC -DCUDNN)
if(ENABLE_CUDNN_HALF)
target_compile_definitions(darknet PRIVATE -DCUDNN_HALF)
target_compile_definitions(dark PUBLIC -DCUDNN_HALF)
endif()
endif()
if(OpenCV_FOUND)
target_link_libraries(darknet PRIVATE ${OpenCV_LIBS})
target_link_libraries(uselib PRIVATE ${OpenCV_LIBS})
target_link_libraries(darklib PRIVATE ${OpenCV_LIBS})
target_link_libraries(dark PRIVATE ${OpenCV_LIBS})
target_compile_definitions(darknet PRIVATE -DOPENCV)
target_compile_definitions(dark PUBLIC -DOPENCV)
endif()
if(OPENMP_FOUND)
target_link_libraries(darknet PRIVATE OpenMP::OpenMP_CXX)
target_link_libraries(darklib PRIVATE OpenMP::OpenMP_CXX)
target_link_libraries(darknet PUBLIC OpenMP::OpenMP_CXX)
target_link_libraries(darknet PUBLIC OpenMP::OpenMP_C)
target_link_libraries(dark PUBLIC OpenMP::OpenMP_CXX)
target_link_libraries(dark PUBLIC OpenMP::OpenMP_C)
endif()
if(CMAKE_COMPILER_IS_GNUCC)
target_link_libraries(darknet PRIVATE m)
target_link_libraries(darklib PRIVATE m)
target_link_libraries(dark PRIVATE m)
endif()
if(MSVC)
target_link_libraries(darknet PRIVATE PThreads_windows::PThreads_windows)
target_link_libraries(darknet PRIVATE wsock32 ws2_32)
target_link_libraries(darklib PRIVATE PThreads_windows::PThreads_windows)
target_link_libraries(darklib PRIVATE wsock32 ws2_32)
target_link_libraries(dark PRIVATE PThreads_windows::PThreads_windows)
target_link_libraries(dark PRIVATE wsock32 ws2_32)
target_compile_definitions(darknet PRIVATE -D_CRT_RAND_S -DNOMINMAX -D_USE_MATH_DEFINES)
target_compile_definitions(dark PRIVATE -D_CRT_RAND_S -DNOMINMAX -D_USE_MATH_DEFINES)
target_compile_definitions(uselib PRIVATE -D_CRT_RAND_S -DNOMINMAX -D_USE_MATH_DEFINES)
endif()
target_link_libraries(darknet PRIVATE Threads::Threads)
target_link_libraries(darklib PRIVATE Threads::Threads)
target_link_libraries(dark PRIVATE Threads::Threads)
if(ENABLE_ZED_CAMERA)
target_link_libraries(darknet PRIVATE ${ZED_LIBRARIES})
target_link_libraries(dark PRIVATE ${ZED_LIBRARIES})
target_link_libraries(uselib PRIVATE ${ZED_LIBRARIES})
target_compile_definitions(darknet PRIVATE -DZED_STEREO)
target_compile_definitions(uselib PRIVATE -DZED_STEREO)
target_compile_definitions(dark PRIVATE -DZED_STEREO)
endif()
if(ENABLE_CUDA)
target_include_directories(darknet PUBLIC ${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES})
target_include_directories(dark PUBLIC ${CMAKE_CUDA_TOOLKIT_INCLUDE_DIRECTORIES})
target_link_libraries(darknet PRIVATE curand cublas cuda)
target_link_libraries(darklib PRIVATE curand cublas cuda)
set_target_properties(darklib PROPERTIES CUDA_RESOLVE_DEVICE_SYMBOLS ON)
target_link_libraries(dark PRIVATE curand cublas cuda)
set_target_properties(dark PROPERTIES CUDA_RESOLVE_DEVICE_SYMBOLS ON)
target_compile_definitions(darknet PRIVATE -DGPU)
target_compile_definitions(dark PUBLIC -DGPU)
endif()
if(USE_INTEGRATED_LIBS)
target_compile_definitions(darknet PRIVATE -D_TIMESPEC_DEFINED)
target_compile_definitions(dark PRIVATE -D_TIMESPEC_DEFINED)
endif()
target_link_libraries(uselib PRIVATE darklib)
target_link_libraries(uselib PRIVATE dark)
if(OpenCV_FOUND AND OpenCV_VERSION VERSION_GREATER "3.0" AND NOT SKIP_USELIB_TRACK)
target_link_libraries(uselib_track PRIVATE darklib)
target_link_libraries(uselib_track PRIVATE dark)
target_compile_definitions(uselib_track PRIVATE TRACK_OPTFLOW=1)
target_compile_definitions(uselib_track PRIVATE -DUSE_CMAKE_LIBS)
#set_target_properties(uselib_track PROPERTIES LINKER_LANGUAGE CXX)
target_include_directories(uselib_track PRIVATE ${CMAKE_CURRENT_LIST_DIR}/include)
target_link_libraries(uselib_track PRIVATE ${OpenCV_LIBS})
if(ENABLE_ZED_CAMERA)
target_link_libraries(uselib_track PRIVATE ${ZED_LIBRARIES})
target_compile_definitions(uselib_track PRIVATE -DZED_STEREO)
endif()
if(MSVC)
target_compile_definitions(uselib_track PRIVATE -D_CRT_RAND_S -DNOMINMAX -D_USE_MATH_DEFINES)
endif()
endif()
set_target_properties(darklib PROPERTIES PUBLIC_HEADER "${exported_headers};${CMAKE_CURRENT_LIST_DIR}/include/yolo_v2_class.hpp")
#set_target_properties(dark PROPERTIES PUBLIC_HEADER "${exported_headers};${CMAKE_CURRENT_LIST_DIR}/include/yolo_v2_class.hpp")
set_target_properties(dark PROPERTIES PUBLIC_HEADER "${CMAKE_CURRENT_LIST_DIR}/include/darknet.h;${CMAKE_CURRENT_LIST_DIR}/include/yolo_v2_class.hpp")
set_target_properties(dark PROPERTIES CXX_VISIBILITY_PRESET hidden)
install(TARGETS darklib EXPORT DarknetTargets
install(TARGETS dark EXPORT DarknetTargets
RUNTIME DESTINATION "${INSTALL_BIN_DIR}"
LIBRARY DESTINATION "${INSTALL_LIB_DIR}"
ARCHIVE DESTINATION "${INSTALL_LIB_DIR}"

@ -1,212 +0,0 @@
{
"configurations": [
{
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Release",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Release-int-libs",
"variables": [
{
"name": "USE_INTEGRATED_LIBS",
"value": "TRUE"
}
]
},
{
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Debug",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Debug static",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}, {
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Release",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Release static",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}, {
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Debug",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Debug static w/ CUDA",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "CUDA_COMPUTE_MODEL",
"value": "30"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}, {
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Release",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Release static w/ CUDA",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "CUDA_COMPUTE_MODEL",
"value": "30"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}
{
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Debug",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Debug dynamic",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "BUILD_SHARED_LIBS",
"value": "TRUE"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}, {
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Release",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Release dynamic",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "BUILD_SHARED_LIBS",
"value": "TRUE"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}, {
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Debug",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Debug dynamic w/ CUDA",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "CUDA_COMPUTE_MODEL",
"value": "30"
},
{
"name": "BUILD_SHARED_LIBS",
"value": "TRUE"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}, {
"buildCommandArgs": "-m -v:minimal",
"buildRoot": "${env.USERPROFILE}\\CMakeBuilds\\${workspaceHash}\\build\\${name}",
"cmakeCommandArgs": "",
"configurationType": "Release",
"generator": "Visual Studio 15 2017 Win64",
"name": "x64-Release dynamic w/ CUDA",
"variables": [{
"name": "CMAKE_TOOLCHAIN_FILE",
"value": "${env.VCPKG_ROOT}\\scripts\\buildsystems\\vcpkg.cmake"
},
{
"name": "USE_INTEGRATED_LIBS",
"value": "FALSE"
},
{
"name": "CUDA_COMPUTE_MODEL",
"value": "30"
},
{
"name": "BUILD_SHARED_LIBS",
"value": "TRUE"
},
{
"name": "VCPKG_TARGET_TRIPLET",
"value": "${env.VCPKG_DEFAULT_TRIPLET}"
}
]
}
]
}

@ -1,47 +1,32 @@
# Config file for the Darknet package
# It defines the following variables
# Darknet_INCLUDE_DIRS - include directories for Darknet
# Darknet_LIBRARIES - libraries to link against
# Compute paths
get_filename_component(Darknet_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
set(Darknet_INCLUDE_DIRS "@CONF_INCLUDE_DIRS@")
list(APPEND CMAKE_MODULE_PATH "${Darknet_CMAKE_DIR}")
include(CMakeFindDependencyMacro)
if(@ENABLE_OPENCV@)
find_dependency(OpenCV REQUIRED)
add_definitions(-DOPENCV)
if(@OpenCV_FOUND@)
find_dependency(OpenCV)
endif()
find_dependency(Stb REQUIRED)
find_dependency(Stb)
if(@ENABLE_CUDA@)
find_dependency(CUDNN)
add_definitions(-DGPU)
if(CUDNN_FOUND)
add_definitions(-DCUDNN)
if(@CUDA_COMPUTE_MODEL@ VERSION_GREATER_EQUAL @CUDA_COMPUTE_MODEL_70@)
add_definitions(-DCUDNN_HALF)
message(STATUS "Enabled CUDNN_HALF")
endif()
if(@CUDNN_FOUND@)
find_dependency(CUDNN)
endif()
endif()
set(CMAKE_THREAD_PREFER_PTHREAD ON)
find_dependency(Threads)
if(MSVC)
if(@MSVC@)
find_dependency(PThreads_windows)
endif()
if("${CMAKE_VERSION}" VERSION_GREATER "3.9.0")
if(@OPENMP_FOUND@)
find_dependency(OpenMP)
endif()
# Our library dependencies (contains definitions for IMPORTED targets)
include("${Darknet_CMAKE_DIR}/DarknetTargets.cmake")
# These are IMPORTED targets created by DarknetTargets.cmake
set(Darknet_LIBRARIES darklib)

@ -67,7 +67,8 @@ install:
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] git pull
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] .\bootstrap-vcpkg.bat
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] if [%USE_CUDA%]==[yes] vcpkg install cuda
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] vcpkg install opencv[ffmpeg] pthreads ## opencv[ffmpeg,cuda] is too big to build, timing out (>1h). We use plain openCV also for CUDA builds (toolchain can manage this strange situation anyway)
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] vcpkg install stb pthreads
- if [%COMPILER%]==[vs] if NOT [%USE_INTEGRATED_LIBS%]==[yes] vcpkg install opencv[ffmpeg] ## opencv[ffmpeg,cuda] is too big to build, timing out (>1h). We use plain openCV also for CUDA builds (toolchain can manage this strange situation anyway)
- cd %WORKSPACE%\darknet\
- mkdir build_debug && cd build_debug
- if [%COMPILER%]==[cygwin] %CYGSH% 'cmake .. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE="Debug"'

@ -3,18 +3,6 @@
$number_of_build_workers=8
$force_using_include_libs=$false
#$my_cuda_compute_model=75 #Compute capability for Tesla T4, RTX 2080
#$my_cuda_compute_model=72 #Compute capability for Jetson Xavier
#$my_cuda_compute_model=70 #Compute capability for Tesla V100
#$my_cuda_compute_model=62 #Compute capability for Jetson TX2
#$my_cuda_compute_model=61 #Compute capability for Tesla P40
#$my_cuda_compute_model=60 #Compute capability for Tesla P100
#$my_cuda_compute_model=53 #Compute capability for Jetson TX1
#$my_cuda_compute_model=52 #Compute capability for Tesla M40/M60
#$my_cuda_compute_model=37 #Compute capability for Tesla K80
#$my_cuda_compute_model=35 #Compute capability for Tesla K20/K40
#$my_cuda_compute_model=30 #Compute capability for Tesla K10, Quadro K4000
function getProgramFiles32bit() {
$out = ${env:PROGRAMFILES(X86)}
if ($null -eq $out) {
@ -153,13 +141,6 @@ if (Test-Path env:CUDA_PATH) {
$env:CUDA_TOOLKIT_ROOT_DIR = "${env:CUDA_PATH}"
Write-Host "Added missing env variable CUDA_TOOLKIT_ROOT_DIR" -ForegroundColor Yellow
}
if ($my_cuda_compute_model) {
$additional_build_setup = "-DCUDA_COMPUTE_MODEL=${my_cuda_compute_model}"
Write-Host "Using compute capability ${my_cuda_compute_model}" -ForegroundColor Yellow
}
else {
Write-Host "Using default compute capability" -ForegroundColor Yellow
}
}

@ -1,18 +1,5 @@
#!/usr/bin/env bash
## by default darknet is built with CC 3.0 if cuda is found. Uncomment another CC (only one!) if you prefer a different choice
#my_cuda_compute_model=75 #Compute capability for Tesla T4, RTX 2080
#my_cuda_compute_model=72 #Compute capability for Jetson Xavier
#my_cuda_compute_model=70 #Compute capability for Tesla V100
#my_cuda_compute_model=62 #Compute capability for Jetson TX2
#my_cuda_compute_model=61 #Compute capability for Tesla P40
#my_cuda_compute_model=60 #Compute capability for Tesla P100
#my_cuda_compute_model=53 #Compute capability for Jetson TX1
#my_cuda_compute_model=52 #Compute capability for Tesla M40/M60
#my_cuda_compute_model=37 #Compute capability for Tesla K80
#my_cuda_compute_model=35 #Compute capability for Tesla K20/K40
#my_cuda_compute_model=30 #Compute capability for Tesla K10, Quadro K4000
number_of_build_workers=8
bypass_vcpkg=true
@ -21,22 +8,18 @@ if [[ "$OSTYPE" == "darwin"* ]]; then
export CC="/usr/local/bin/gcc-8"
export CXX="/usr/local/bin/g++-8"
fi
vcpkg_triplet="x64-darwin"
vcpkg_triplet="x64-osx"
else
vcpkg_triplet="x64-linux"
fi
if [[ ! -z "$my_cuda_compute_model" ]]; then
additional_build_setup="-DCUDA_COMPUTE_MODEL=${my_cuda_compute_model}"
fi
if [[ -d ${VCPKG_ROOT} ]] && [ ! "$bypass_vcpkg" = true ]
if [[ ! -z "${VCPKG_ROOT}" ]] && [ -d ${VCPKG_ROOT} ] && [ ! "$bypass_vcpkg" = true ]
then
vcpkg_path="${VCPKG_ROOT}"
vcpkg_define="-DCMAKE_TOOLCHAIN_FILE=${vcpkg_path}/scripts/buildsystems/vcpkg.cmake"
vcpkg_triplet_define="-DVCPKG_TARGET_TRIPLET=$vcpkg_triplet"
echo "Found vcpkg in VCPKG_ROOT: ${vcpkg_path}"
elif [ -d ${WORKSPACE}/vcpkg${vcpkg_fork} ] && [ ! "$bypass_vcpkg" = true ]
elif [[ ! -z "${WORKSPACE}" ]] && [ -d ${WORKSPACE}/vcpkg ] && [ ! "$bypass_vcpkg" = true ]
then
vcpkg_path="${WORKSPACE}/vcpkg"
vcpkg_define="-DCMAKE_TOOLCHAIN_FILE=${vcpkg_path}/scripts/buildsystems/vcpkg.cmake"

@ -60,8 +60,10 @@ endif()
set(CUDNN_INCLUDE_DIRS ${CUDNN_INCLUDE_DIR})
set(CUDNN_LIBRARIES ${CUDNN_LIBRARY})
message(STATUS "Found cuDNN: v${CUDNN_VERSION} (include: ${CUDNN_INCLUDE_DIR}, library: ${CUDNN_LIBRARY})")
mark_as_advanced(CUDNN_ROOT_DIR CUDNN_LIBRARY CUDNN_INCLUDE_DIR)
if(CUDNN_FOUND)
message(STATUS "Found cuDNN: v${CUDNN_VERSION} (include: ${CUDNN_INCLUDE_DIR}, library: ${CUDNN_LIBRARY})")
endif()
mark_as_advanced(CUDNN_LIBRARY CUDNN_INCLUDE_DIR)
# Register imported libraries:
# 1. If we can find a Windows .dll file (or if we can find both Debug and
@ -75,7 +77,7 @@ if(WIN32)
endif()
if( CUDNN_FOUND AND NOT TARGET CuDNN::CuDNN )
if( EXISTS "${CUDNN_LIBRARY_RELEASE_DLL}" )
if( EXISTS "${CUDNN_LIBRARY_DLL}" )
add_library( CuDNN::CuDNN SHARED IMPORTED )
set_target_properties( CuDNN::CuDNN PROPERTIES
IMPORTED_LOCATION "${CUDNN_LIBRARY_DLL}"

@ -36,12 +36,12 @@
#ifdef GPU
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#ifdef CUDNN
#include "cudnn.h"
#include <cudnn.h>
#endif
#endif

@ -1,7 +1,7 @@
#include "darknet.h"
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "activations.h"
#include "dark_cuda.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "avgpool_layer.h"
#include "dark_cuda.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include <assert.h>
#include "blas.h"
@ -1035,7 +1035,6 @@ extern "C" int is_nan_or_inf(float *input, size_t size)
return ret_val;
}
__global__ void add_3_arrays_activate_kernel(float *a1, float *a2, float *a3, size_t size, ACTIVATION a, float *dst)
{
const int index = blockIdx.x*blockDim.x + threadIdx.x;
@ -1097,4 +1096,4 @@ extern "C" void activate_and_mult(float *a1, float *a2, size_t size, ACTIVATION
exit(EXIT_FAILURE);
}
activate_and_mult_kernel << <num_blocks, block_size, 0, get_cuda_stream() >> >(a1, a2, size, a, dst);
}
}

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "col2im.h"
#include "dark_cuda.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "convolutional_layer.h"
#include "batchnorm_layer.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "crop_layer.h"
#include "utils.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "convolutional_layer.h"
#include "deconvolutional_layer.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "dropout_layer.h"
#include "dark_cuda.h"

@ -1,6 +1,6 @@
#include "cuda_runtime.h"
#include "curand.h"
#include "cublas_v2.h"
#include <cuda_runtime.h>
#include <curand.h>
#include <cublas_v2.h>
#include "maxpool_layer.h"
#include "dark_cuda.h"

Loading…
Cancel
Save