From 7b664e27ca2865f3e06101d50415f2943d2de58c Mon Sep 17 00:00:00 2001 From: Azhng Date: Tue, 21 Feb 2023 19:24:57 +0000 Subject: [PATCH 01/13] add required thrust include for s_filtergrid.cu --- src/popsift/s_filtergrid.cu | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/popsift/s_filtergrid.cu b/src/popsift/s_filtergrid.cu index 301c6a96..a766c2de 100644 --- a/src/popsift/s_filtergrid.cu +++ b/src/popsift/s_filtergrid.cu @@ -19,9 +19,11 @@ #if ! POPSIFT_IS_DEFINED(POPSIFT_DISABLE_GRID_FILTER) #include +#include #include #include #include +#include #include #include #include From fb3c1073254b892f073a3a80dbc9d51cbb2171ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20De=20Lillo?= Date: Mon, 6 Mar 2023 11:15:40 +0000 Subject: [PATCH 02/13] [popsift] Use width in elements instead of bytes in checkLimit_2DsurfLayered --- src/popsift/common/device_prop.cu | 2 +- src/popsift/common/device_prop.h | 3 +-- src/popsift/popsift.cpp | 11 +++-------- 3 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/popsift/common/device_prop.cu b/src/popsift/common/device_prop.cu index 8436a69b..a55821cd 100644 --- a/src/popsift/common/device_prop.cu +++ b/src/popsift/common/device_prop.cu @@ -274,7 +274,7 @@ bool device_prop_t::checkLimit_2DsurfLayered( int& width, int& height, int& laye std::cerr << __FILE__ << ":" << __LINE__ << ": CUDA device " << currentDevice << std::endl << " does not support layered 2D surfaces " << width - << " bytes wide." << endl; + << " pixels wide." << endl; } width = ptr->maxSurface2DLayered[0]; returnSuccess = false; diff --git a/src/popsift/common/device_prop.h b/src/popsift/common/device_prop.h index ed5db2b2..7a0b142d 100644 --- a/src/popsift/common/device_prop.h +++ b/src/popsift/common/device_prop.h @@ -91,8 +91,7 @@ class device_prop_t /** * @brief Check if a request exceeds the current CUDA device's limit in * surface2DLayered dimensions. surface2DLayered is the writable equivalent - * to texture2DLayered, but the width must be given in bytes, not elements. - * Since we use float, images cannot be as wide as expected. + * to texture2DLayered. * @param[in,out] width Desired width of the texture. * @param[in,out] height Desired height of the texture. * @param[in,out] layers Desired depth of the texture. diff --git a/src/popsift/popsift.cpp b/src/popsift/popsift.cpp index 253af961..6224eb93 100755 --- a/src/popsift/popsift.cpp +++ b/src/popsift/popsift.cpp @@ -184,12 +184,7 @@ PopSift::AllocTest PopSift::testTextureFit( int width, int height ) */ int depth = _config.levels + 3; - /* Surfaces have a limited width in bytes, not in elements. - * Our DOG pyramid stores 4/byte floats, so me must check for - * that width. - */ - int byteWidth = width * sizeof(float); - retval = _device_properties.checkLimit_2DsurfLayered( byteWidth, + retval = _device_properties.checkLimit_2DsurfLayered( width, height, depth, warn ); @@ -216,13 +211,13 @@ std::string PopSift::testTextureFitErrorString( AllocTest err, int width, int he { const float upscaleFactor = _config.getUpscaleFactor(); const float scaleFactor = 1.0f / powf( 2.0f, -upscaleFactor ); - int w = ceilf( width * scaleFactor ) * sizeof(float); + int w = ceilf( width * scaleFactor ); int h = ceilf( height * scaleFactor ); int d = _config.levels + 3; _device_properties.checkLimit_2DsurfLayered( w, h, d, false ); - w = w / scaleFactor / sizeof(float); + w = w / scaleFactor; h = h / scaleFactor; ostr << "E Cannot use" << (upscaleFactor==1 ? " default " : " ") From dc7302e5807134ced27e8f451592ed90b4f8bf38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gr=C3=A9goire=20De=20Lillo?= Date: Mon, 6 Mar 2023 11:19:23 +0000 Subject: [PATCH 03/13] [popsift] plane_2d: Use size_t type for memory size in bytes Use size_t type to avoid short type overflow with large size images. --- src/popsift/common/plane_2d.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/popsift/common/plane_2d.h b/src/popsift/common/plane_2d.h index 86d26f5c..e262714f 100644 --- a/src/popsift/common/plane_2d.h +++ b/src/popsift/common/plane_2d.h @@ -168,10 +168,10 @@ template struct PitchPlane2D : public PlaneT PlaneBase::freeHost2D( this->data, mode ); } __host__ __device__ - inline short getPitchInBytes( ) const { return _pitchInBytes; } + inline size_t getPitchInBytes( ) const { return _pitchInBytes; } protected: - int _pitchInBytes; // pitch width in bytes + size_t _pitchInBytes; // pitch width in bytes }; /************************************************************* @@ -338,7 +338,7 @@ template class Plane2D : public PitchPlane2D __host__ __device__ inline short getHeight( ) const { return _rows; } __host__ __device__ - inline short getByteSize( ) const { return this->_pitchInBytes*_rows; } + inline size_t getByteSize( ) const { return this->_pitchInBytes * _rows; } __host__ inline void allocDev( int w, int h ) { _cols = w; From 88acf53c35bc763af297ff8de213b51c7b8c71f5 Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Thu, 16 Mar 2023 15:28:38 -0700 Subject: [PATCH 04/13] Add support for CUDA versions through 12.1. --- cmake/ChooseCudaCC.cmake | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/cmake/ChooseCudaCC.cmake b/cmake/ChooseCudaCC.cmake index 425e8bd5..36c73178 100755 --- a/cmake/ChooseCudaCC.cmake +++ b/cmake/ChooseCudaCC.cmake @@ -65,7 +65,7 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS) set(CC_LIST_BY_SYSTEM_PROCESSOR "") if(CMAKE_SYSTEM_PROCESSOR IN_LIST OTHER_SUPPORTED_PROCESSORS) - list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "20;21;30;35;50;52;60;61;70;75;80;86") + list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "20;21;30;35;50;52;60;61;70;75;80;86;87;89;90") endif() if(CMAKE_SYSTEM_PROCESSOR IN_LIST TEGRA_SUPPORTED_PROCESSORS) list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "32;53;62;72") @@ -78,10 +78,20 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS) # Default setting of the CUDA CC versions to compile. # Shortening the lists saves a lot of compile time. # - set(CUDA_MIN_CC 20) - set(CUDA_MAX_CC 86) - if(CUDA_VERSION VERSION_GREATER_EQUAL 11.1) + + # The current version last time this list was updated was CUDA 12.1. + if(CUDA_VERSION VERSION_GREATER_EQUAL 12) + set(CUDA_MIN_CC 50) + set(CUDA_MAX_CC 90) + elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.8) + set(CUDA_MIN_CC 35) + set(CUDA_MAX_CC 90) + elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.6) + set(CUDA_MIN_CC 35) + set(CUDA_MAX_CC 87) + elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.1) set(CUDA_MIN_CC 35) + set(CUDA_MAX_CC 86) elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 11) set(CUDA_MIN_CC 35) set(CUDA_MAX_CC 80) @@ -92,8 +102,10 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS) set(CUDA_MIN_CC 30) set(CUDA_MAX_CC 72) elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 8) + set(CUDA_MIN_CC 20) set(CUDA_MAX_CC 62) elseif(CUDA_VERSION_MAJOR GREATER_EQUAL 7) + set(CUDA_MIN_CC 20) set(CUDA_MAX_CC 53) else() message(FATAL_ERROR "We do not support a CUDA SDK below version 7.0") From 9e5a50d86311f76a3591a2e9ab4eaa87a845a30f Mon Sep 17 00:00:00 2001 From: Billy Robert O'Neal III Date: Tue, 21 Mar 2023 12:13:34 -0700 Subject: [PATCH 05/13] Remove checking for hardware 87. --- cmake/ChooseCudaCC.cmake | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/cmake/ChooseCudaCC.cmake b/cmake/ChooseCudaCC.cmake index 36c73178..aba4eb91 100755 --- a/cmake/ChooseCudaCC.cmake +++ b/cmake/ChooseCudaCC.cmake @@ -65,7 +65,7 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS) set(CC_LIST_BY_SYSTEM_PROCESSOR "") if(CMAKE_SYSTEM_PROCESSOR IN_LIST OTHER_SUPPORTED_PROCESSORS) - list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "20;21;30;35;50;52;60;61;70;75;80;86;87;89;90") + list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "20;21;30;35;50;52;60;61;70;75;80;86;89;90") endif() if(CMAKE_SYSTEM_PROCESSOR IN_LIST TEGRA_SUPPORTED_PROCESSORS) list(APPEND CC_LIST_BY_SYSTEM_PROCESSOR "32;53;62;72") @@ -86,9 +86,6 @@ function(chooseCudaCC SUPPORTED_CC SUPPORTED_GENCODE_FLAGS) elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.8) set(CUDA_MIN_CC 35) set(CUDA_MAX_CC 90) - elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.6) - set(CUDA_MIN_CC 35) - set(CUDA_MAX_CC 87) elseif(CUDA_VERSION VERSION_GREATER_EQUAL 11.1) set(CUDA_MIN_CC 35) set(CUDA_MAX_CC 86) From d49f2ed68c493be6406dbaf77e4148b9b4b6faea Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Fri, 24 Mar 2023 21:40:18 +0100 Subject: [PATCH 06/13] [ci] added github actions for CI --- .github/workflows/continuous-integration.yml | 64 ++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 .github/workflows/continuous-integration.yml diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml new file mode 100644 index 00000000..e4e42a57 --- /dev/null +++ b/.github/workflows/continuous-integration.yml @@ -0,0 +1,64 @@ +name: Continuous Integration + +on: + push: + branches: + - master + - develop + # Skip jobs when only documentation files are changed + paths-ignore: + - '**.md' + - '**.rst' + - 'docs/**' + pull_request: + paths-ignore: + - '**.md' + - '**.rst' + - 'docs/**' + +jobs: + build: + runs-on: ubuntu-latest + strategy: + matrix: + container: ["alicevision/popsift-deps:cuda10.2-ubuntu18.04", "alicevision/popsift-deps:cuda11.8.0-ubuntu20.04", "alicevision/popsift-deps:cuda12.1.0-ubuntu22.04"] + build_tpe: ["Release", "Debug"] + + container: + image: ${{ matrix.container }} + + env: + DEPS_INSTALL_DIR: /opt/ + BUILD_TYPE: Release + CTEST_OUTPUT_ON_FAILURE: 1 + steps: + - uses: actions/checkout@v2 + + - name: Prepare File Tree + run: | + mkdir ./build + mkdir ./build_as_3rdparty + mkdir ../popsift_install + + - name: Configure CMake + working-directory: ./build + run: | + cmake .. \ + -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DCMAKE_PREFIX_PATH="${DEPS_INSTALL_DIR}" \ + -DPopSift_BUILD_DOCS:BOOL=OFF \ + -DCMAKE_INSTALL_PREFIX:PATH=$PWD/../../popsift_install + + - name: Build + working-directory: ./build + run: | + make -j$(nproc) install + + - name: Build As Third Party + working-directory: ./build_as_3rdparty + run: | + cmake ../src/application \ + -DBUILD_SHARED_LIBS:BOOL=ON \ + -DCMAKE_PREFIX_PATH:PATH="$PWD/../../popsift_install;${DEPS_INSTALL_DIR}" + make -j$(nproc) From 819f70d820cb77cf2fe7f332ea3528cd510e213f Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Fri, 24 Mar 2023 22:30:41 +0100 Subject: [PATCH 07/13] [docker] updated docker for dependencies --- Dockerfile_deps | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Dockerfile_deps b/Dockerfile_deps index bed8cc59..d5560d4e 100644 --- a/Dockerfile_deps +++ b/Dockerfile_deps @@ -7,7 +7,7 @@ LABEL maintainer="AliceVision Team alicevision@googlegroups.com" # see https://hub.docker.com/r/nvidia/cuda/ # # For example, to create a ubuntu 16.04 with cuda 8.0 for development, use -# docker build --build-arg CUDA_TAG=8.0 --tag alicevision/popsift-deps:cuda${CUDA_TAG}-ubuntu${OS_TAG} . +# docker build --build-arg CUDA_TAG=8.0 --tag alicevision/popsift-deps:cuda${CUDA_TAG}-ubuntu${OS_TAG} -f Dockerfile_deps . # # then execute with nvidia docker (https://github.com/nvidia/nvidia-docker/wiki/Installation-(version-2.0)) # docker run -it --runtime=nvidia popsift_deps @@ -32,12 +32,12 @@ RUN apt-get clean && apt-get update && apt-get install -y --no-install-recommend libboost-thread-dev \ && rm -rf /var/lib/apt/lists/* - # Manually install cmake +# Manually install cmake WORKDIR /tmp/cmake -ENV CMAKE_VERSION=3.17 +ENV CMAKE_VERSION=3.24 ENV CMAKE_VERSION_FULL=${CMAKE_VERSION}.2 -RUN wget https://cmake.org/files/v3.17/cmake-${CMAKE_VERSION_FULL}.tar.gz && \ - tar zxvf cmake-${CMAKE_VERSION_FULL}.tar.gz && \ +RUN wget https://cmake.org/files/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION_FULL}.tar.gz && \ + tar zxf cmake-${CMAKE_VERSION_FULL}.tar.gz && \ cd cmake-${CMAKE_VERSION_FULL} && \ ./bootstrap --prefix=/usr/local -- -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_USE_OPENSSL:BOOL=ON && \ make -j$(nproc) install && \ From cfe0c6ec9d3e965aaa694dcca1a7471c8769b138 Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Fri, 24 Mar 2023 22:31:06 +0100 Subject: [PATCH 08/13] [doc] fix codacy badge in readme --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 2f257845..99bd3d95 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ # PopSift -[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/3728/badge)](https://bestpractices.coreinfrastructure.org/projects/3728) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/8b0f7a68bc0d4df2ac89c6e732917caa)](https://app.codacy.com/manual/alicevision/popsift?utm_source=github.com&utm_medium=referral&utm_content=alicevision/popsift&utm_campaign=Badge_Grade_Settings) +[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/3728/badge)](https://bestpractices.coreinfrastructure.org/projects/3728) [! +[![Codacy Badge](https://app.codacy.com/project/badge/Grade/64f9192b53df46b483e7cf5be7e2dddd)](https://app.codacy.com/gh/alicevision/popsift/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade) PopSift is an open-source implementation of the SIFT algorithm in CUDA. PopSift tries to stick as closely as possible to David Lowe's famous paper [1], while extracting features from an image in real-time at least on an NVidia GTX 980 Ti GPU. From 0ebc70d2bc4df92d71bf98c12b9f1126f60266b7 Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Fri, 24 Mar 2023 22:32:10 +0100 Subject: [PATCH 09/13] [doc] update github action badge in readme fix #148 --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 99bd3d95..149bce79 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # PopSift -[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/3728/badge)](https://bestpractices.coreinfrastructure.org/projects/3728) [! +[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/3728/badge)](https://bestpractices.coreinfrastructure.org/projects/3728) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/64f9192b53df46b483e7cf5be7e2dddd)](https://app.codacy.com/gh/alicevision/popsift/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade) PopSift is an open-source implementation of the SIFT algorithm in CUDA. @@ -101,10 +101,10 @@ In particular, users can choose to generate results very similar to VLFeat or re We acknowledge that there is at least one SIFT implementation that is vastly faster, but it makes considerable sacrifices in terms of accuracy and compatibility. ## Continuous integration: -- [![Build Status](https://travis-ci.org/alicevision/popsift.svg?branch=master)](https://travis-ci.org/alicevision/popsift) master branch. -- [![Build Status](https://travis-ci.org/alicevision/popsift.svg?branch=develop)](https://travis-ci.org/alicevision/popsift) develop branch. +- ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=master) master branch on Linux. +- ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=develop) develop branch on Linux. - [![Build status](https://ci.appveyor.com/api/projects/status/rsm5269hs288c2ji/branch/develop?svg=true)](https://ci.appveyor.com/project/AliceVision/popsift/branch/develop) - develop branch. + develop branch on Windows. ## License From 0e99e6988a3f137262a58f1b88601b79e623989c Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Sat, 25 Mar 2023 15:49:28 +0100 Subject: [PATCH 10/13] [doc]codacy fix --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 149bce79..2284d1a3 100644 --- a/README.md +++ b/README.md @@ -101,8 +101,11 @@ In particular, users can choose to generate results very similar to VLFeat or re We acknowledge that there is at least one SIFT implementation that is vastly faster, but it makes considerable sacrifices in terms of accuracy and compatibility. ## Continuous integration: + - ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=master) master branch on Linux. + - ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=develop) develop branch on Linux. + - [![Build status](https://ci.appveyor.com/api/projects/status/rsm5269hs288c2ji/branch/develop?svg=true)](https://ci.appveyor.com/project/AliceVision/popsift/branch/develop) develop branch on Windows. From 7469b407d450d052b43c8a7893d0801298040feb Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Sat, 25 Mar 2023 15:50:04 +0100 Subject: [PATCH 11/13] [ci] take into account build type --- .github/workflows/continuous-integration.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index e4e42a57..2bea3b99 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -29,7 +29,7 @@ jobs: env: DEPS_INSTALL_DIR: /opt/ - BUILD_TYPE: Release + BUILD_TYPE: ${{ matrix.build_tpe }} CTEST_OUTPUT_ON_FAILURE: 1 steps: - uses: actions/checkout@v2 @@ -60,5 +60,6 @@ jobs: run: | cmake ../src/application \ -DBUILD_SHARED_LIBS:BOOL=ON \ + -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \ -DCMAKE_PREFIX_PATH:PATH="$PWD/../../popsift_install;${DEPS_INSTALL_DIR}" make -j$(nproc) From 7801d02e3506bee30e151e3d6f0e17eca825d3cc Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Sat, 25 Mar 2023 16:18:21 +0100 Subject: [PATCH 12/13] [doc] codacy requires * instead of - --- README.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 2284d1a3..418d1278 100644 --- a/README.md +++ b/README.md @@ -102,12 +102,11 @@ We acknowledge that there is at least one SIFT implementation that is vastly fas ## Continuous integration: -- ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=master) master branch on Linux. +* ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=master) master branch on Linux. -- ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=develop) develop branch on Linux. +* ![Continuous Integration](https://github.com/alicevision/popsift/workflows/Continuous%20Integration/badge.svg?branch=develop) develop branch on Linux. -- [![Build status](https://ci.appveyor.com/api/projects/status/rsm5269hs288c2ji/branch/develop?svg=true)](https://ci.appveyor.com/project/AliceVision/popsift/branch/develop) - develop branch on Windows. +* [![Build status](https://ci.appveyor.com/api/projects/status/rsm5269hs288c2ji/branch/develop?svg=true)](https://ci.appveyor.com/project/AliceVision/popsift/branch/develop) develop branch on Windows. ## License From 84280d5970ebe604192d8d1d520effed3742eb53 Mon Sep 17 00:00:00 2001 From: Simone Gasparini Date: Sat, 25 Mar 2023 16:18:50 +0100 Subject: [PATCH 13/13] [ci] exclude Debug on latest cuda as there is a segmentation error --- .github/workflows/continuous-integration.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 2bea3b99..f165597e 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -23,6 +23,10 @@ jobs: matrix: container: ["alicevision/popsift-deps:cuda10.2-ubuntu18.04", "alicevision/popsift-deps:cuda11.8.0-ubuntu20.04", "alicevision/popsift-deps:cuda12.1.0-ubuntu22.04"] build_tpe: ["Release", "Debug"] + exclude: + # excludes debug on this one as it has a segmentation fault during the compilation (!) + - container: "alicevision/popsift-deps:cuda12.1.0-ubuntu22.04" + build_tpe: "Debug" container: image: ${{ matrix.container }}