Skip to content

Patch FAISS for missing Thrust includes#1398

Merged
rapids-bot[bot] merged 3 commits intorapidsai:branch-25.10from
bdice:fix-faiss-thrust-missing-includes
Sep 30, 2025
Merged

Patch FAISS for missing Thrust includes#1398
rapids-bot[bot] merged 3 commits intorapidsai:branch-25.10from
bdice:fix-faiss-thrust-missing-includes

Conversation

@bdice
Copy link
Copy Markdown
Contributor

@bdice bdice commented Sep 30, 2025

This PR patches FAISS for some missing Thrust includes. This is needed to support building with CCCL 3.1.x. RAPIDS 25.10 will still use CCCL 3.0.x but we want to make it possible to build with 3.1.x in 25.10.

xref: #1329 (This backports a fix from that testing PR, which is targeting 25.12)

I am upstreaming the patch here: facebookresearch/faiss#4597

Comment thread cpp/cmake/patches/faiss_override.json Outdated
Copy link
Copy Markdown
Contributor

@tarang-jain tarang-jain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! We should revert this once facebookresearch/faiss#4597 is merged. However we still do pin Faiss to 1.12.0, so this PR needs to be merged until 1.13.0 is released (trying to avoid building nightly Faiss in our CI)

@bdice
Copy link
Copy Markdown
Contributor Author

bdice commented Sep 30, 2025

/merge

@cjnolet cjnolet moved this from Todo to In Progress in Unstructured Data Processing Sep 30, 2025
@rapids-bot rapids-bot Bot merged commit 815d86d into rapidsai:branch-25.10 Sep 30, 2025
84 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Unstructured Data Processing Sep 30, 2025
meta-codesync Bot pushed a commit to facebookresearch/faiss that referenced this pull request Oct 9, 2025
Summary:
While testing cuVS with a prerelease build of CCCL 3.1.x, I encountered compilation errors. There were some missing Thrust headers needed for `thrust::copy` and `thrust::device_ptr`.

This is being patched in cuVS as a workaround for now: rapidsai/cuvs#1398

This PR upstreams the patch.

Errors look like this:

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(102): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(258): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(300): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu".
```

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(126): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(292): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(324): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu".
```

Pull Request resolved: #4597

Reviewed By: junjieqi

Differential Revision: D83686425

Pulled By: mnorris11

fbshipit-source-id: 8adf8dacc64b582483ca78cb00ff5d380d616704
AlSchlo pushed a commit to AlSchlo/faiss-panorama that referenced this pull request Oct 12, 2025
Summary:
While testing cuVS with a prerelease build of CCCL 3.1.x, I encountered compilation errors. There were some missing Thrust headers needed for `thrust::copy` and `thrust::device_ptr`.

This is being patched in cuVS as a workaround for now: rapidsai/cuvs#1398

This PR upstreams the patch.

Errors look like this:

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(102): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(258): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(300): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu".
```

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(126): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(292): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(324): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu".
```

Pull Request resolved: facebookresearch#4597

Reviewed By: junjieqi

Differential Revision: D83686425

Pulled By: mnorris11

fbshipit-source-id: 8adf8dacc64b582483ca78cb00ff5d380d616704
samanthawaters8882michaeldonovan added a commit to samanthawaters8882michaeldonovan/faiss that referenced this pull request Oct 12, 2025
Summary:
While testing cuVS with a prerelease build of CCCL 3.1.x, I encountered compilation errors. There were some missing Thrust headers needed for `thrust::copy` and `thrust::device_ptr`.

This is being patched in cuVS as a workaround for now: rapidsai/cuvs#1398

This PR upstreams the patch.

Errors look like this:

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(102): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(258): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(300): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu".
```

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(126): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(292): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(324): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu".
```

Pull Request resolved: facebookresearch/faiss#4597

Reviewed By: junjieqi

Differential Revision: D83686425

Pulled By: mnorris11

fbshipit-source-id: 8adf8dacc64b582483ca78cb00ff5d380d616704
AlSchlo pushed a commit to AlSchlo/faiss-panorama that referenced this pull request Oct 20, 2025
Summary:
While testing cuVS with a prerelease build of CCCL 3.1.x, I encountered compilation errors. There were some missing Thrust headers needed for `thrust::copy` and `thrust::device_ptr`.

This is being patched in cuVS as a workaround for now: rapidsai/cuvs#1398

This PR upstreams the patch.

Errors look like this:

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(102): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(258): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(300): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu".
```

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(126): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(292): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(324): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu".
```

Pull Request resolved: facebookresearch#4597

Reviewed By: junjieqi

Differential Revision: D83686425

Pulled By: mnorris11

fbshipit-source-id: 8adf8dacc64b582483ca78cb00ff5d380d616704
enp1s0 pushed a commit to enp1s0/cuvs that referenced this pull request Oct 22, 2025
This PR patches FAISS for some missing Thrust includes. This is needed to support building with CCCL 3.1.x. RAPIDS 25.10 will still use CCCL 3.0.x but we want to make it possible to build with 3.1.x in 25.10.

xref: rapidsai#1329 (This backports a fix from that testing PR, which is targeting 25.12)

I am upstreaming the patch here: facebookresearch/faiss#4597

Authors:
  - Bradley Dice (https://github.com/bdice)
  - Corey J. Nolet (https://github.com/cjnolet)

Approvers:
  - Tarang Jain (https://github.com/tarang-jain)
  - Divye Gala (https://github.com/divyegala)

URL: rapidsai#1398
dimitraseferiadi pushed a commit to dimitraseferiadi/SuCo that referenced this pull request Mar 8, 2026
Summary:
While testing cuVS with a prerelease build of CCCL 3.1.x, I encountered compilation errors. There were some missing Thrust headers needed for `thrust::copy` and `thrust::device_ptr`.

This is being patched in cuVS as a workaround for now: rapidsai/cuvs#1398

This PR upstreams the patch.

Errors look like this:

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(102): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(258): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(300): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu".
```

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(126): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(292): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(324): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu".
```

Pull Request resolved: facebookresearch#4597

Reviewed By: junjieqi

Differential Revision: D83686425

Pulled By: mnorris11

fbshipit-source-id: 8adf8dacc64b582483ca78cb00ff5d380d616704
dimitraseferiadi pushed a commit to dimitraseferiadi/SuCo that referenced this pull request Mar 16, 2026
Summary:
While testing cuVS with a prerelease build of CCCL 3.1.x, I encountered compilation errors. There were some missing Thrust headers needed for `thrust::copy` and `thrust::device_ptr`.

This is being patched in cuVS as a workaround for now: rapidsai/cuvs#1398

This PR upstreams the patch.

Errors look like this:

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/BinaryCuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(102): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(258): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu(300): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/BinaryCuvsCagra.cu".
```

```
FAILED: [code=2] _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
sccache $BUILD_PREFIX/bin/nvcc -forward-unknown-to-host-compiler -DCCCL_DISABLE_PDL -DCUB_DISABLE_NAMESPACE_MAGIC -DCUB_IGNORE_NAMESPACE_MAGIC_ERROR -DCUTLASS_NAMESPACE=raft_cutlass -DCUVS_BUILD_CAGRA_HNSWLIB -DLIBCUDACXX_ENABLE_EXPERIMENTAL_MEMORY_RESOURCE -DRAFT_LOG_ACTIVE_LEVEL=RAPIDS_LOGGER_LOG_LEVEL_INFO -DRAFT_SYSTEM_LITTLE_ENDIAN=1 -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_CUDA -DTHRUST_DISABLE_ABI_NAMESPACE -DTHRUST_HOST_SYSTEM=THRUST_HOST_SYSTEM_CPP -DTHRUST_IGNORE_ABI_NAMESPACE_ERROR -DUSE_NVIDIA_CUVS=1 -I$SRC_DIR/cpp/build/_deps/faiss-src -I$SRC_DIR/cpp/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/thrust/../../../thrust -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/libcudacxx/../../../libcudacxx/include -I$SRC_DIR/cpp/build/_deps/cccl-src/lib/cmake/cub/../../../cub -I$SRC_DIR/cpp/build/_deps/hnswlib-src -isystem $BUILD_PREFIX/targets/x86_64-linux/include -isystem $BUILD_PREFIX/targets/x86_64-linux/include/cccl -isystem $PREFIX/targets/x86_64-linux/include -isystem $PREFIX/include -isystem $BUILD_PREFIX/include -O3 -DNDEBUG "--generate-code=arch=compute_75,code=[sm_75]" "--generate-code=arch=compute_80,code=[sm_80]" "--generate-code=arch=compute_86,code=[sm_86]" "--generate-code=arch=compute_90a,code=[sm_90a]" "--generate-code=arch=compute_100f,code=[sm_100f]" "--generate-code=arch=compute_120a,code=[sm_120a]" "--generate-code=arch=compute_120,code=[compute_120,sm_120]" -Xcompiler=-fPIC -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler=-fopenmp -Xcompiler -pthread "-Xcompiler=-ffile-prefix-map=$PREFIX/=''" -MD -MT _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o -MF _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o.d -x cu -c $SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu -o _deps/faiss-build/faiss/gpu/CMakeFiles/faiss_gpu_objs.dir/impl/CuvsCagra.cu.o
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(126): error: namespace "thrust" has no member "copy"
          thrust::copy(
                  ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(292): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu(324): error: namespace "thrust" has no member "copy"
      thrust::copy(
              ^
3 errors detected in the compilation of "$SRC_DIR/cpp/build/_deps/faiss-src/faiss/gpu/impl/CuvsCagra.cu".
```

Pull Request resolved: facebookresearch#4597

Reviewed By: junjieqi

Differential Revision: D83686425

Pulled By: mnorris11

fbshipit-source-id: 8adf8dacc64b582483ca78cb00ff5d380d616704
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improves an existing functionality non-breaking Introduces a non-breaking change

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants