Open h-vetinari opened 2 years ago
Ping @mdouze @wickedfoo @beauby @KinglittleQ
I have a possibly related issue with CUDA 12.2
3>CudaBuildCore:
(R:\envs\mamba\faiss) R:\github_projects\faiss\build\faiss>"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2\bin\nvcc.exe" --use-local-env -ccbin "C:\tools\BuildTools\VC
\Tools\MSVC\14.38.33130\bin\HostX64\x64" -x cu -IR:\github_projects\faiss -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.2\include" -I"C:\Program Files\NVIDIA GPU Co
mputing Toolkit\CUDA\v12.2\include" --keep-dir x64\Release -maxrregcount=0 --machine 64 --compile -cudart static -std=c++17 --generate-code=arch=compute_61,code=[compute_6
1,sm_61] -Xfatbin=-compress-all --expt-extended-lambda --expt-relaxed-constexpr -Xcompiler="/EHsc -Ob2" -D_WINDOWS -DNDEBUG -DFAISS_MAIN_LIB -DFINTEGER=int -D"CMAKE_INTDIR=\"Re
lease\"" -Dfaiss_EXPORTS -D_WINDLL -D_MBCS -DWIN32 -D_WINDOWS -DNDEBUG -DFAISS_MAIN_LIB -DFINTEGER=int -D"CMAKE_INTDIR=\"Release\"" -Dfaiss_EXPORTS -Xcompiler "/EHsc /W1 /nologo
/O2 /FS /MD " -Xcompiler "/Fdfaiss.dir\Release\vc143.pdb" -o faiss.dir\Release\template_faissgpuCodec01_faissgpuL2Distance_128_1_1.obj "R:\github_projects\faiss\build\faiss\gpu
\template_faissgpuCodec01_faissgpuL2Distance_128_1_1.cu"
3>R:/github_projects/faiss\faiss/gpu/impl/PQCodeDistances-inl.cuh(539): error : expected an expression [R:\github_projects\faiss\build\faiss\faiss.vcxproj]
auto outDistancesCodeViewCols = outCodeDistancesView.view<2>({coarseIndices.getSize(0) * coarseIndices.getSize(1), outCodeDistances.getSize(2) * outCodeDistances.getSiz
e(3)});
^
1 error detected in the compilation of "R:/github_projects/faiss/faiss/gpu/impl/IVFPQ.cu".
IVFPQ.cu
cmake command:
cmake -DFAISS_ENABLE_GPU=ON -DFAISS_ENABLE_PYTHON=ON -DBUILD_SHARED_LIBS=ON -DCMAKE_BUILD_TYPE=Release -DFAISS_OPT_LEVEL=avx2 -DCMAKE_CUDA_ARCHITECTURES="61" -DCUDAToolkit_ROOT="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.2" -DBLA_VENDOR=NVHPC "-DMKL_LIBRARIES=R:/github_projects/vcpkg/packages/intel-mkl_x64-windows/lib/intel64/mkl_intel_thread_dll.lib;R:/github_projects/vcpkg/packages/intel-mkl_x64-windows/lib/intel64/mkl_intel_ilp64_dll.lib;R:/github_projects/vcpkg/packages/intel-mkl_x64-windows/lib/intel64/mkl_core_dll.lib" "-DBLAS_LIBRARIES=C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.2/lib/x64/cublas.lib;C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.2/lib/x64/cublasLt.lib" -DFAISS_ENABLE_C_API=ON -DBUILD_TESTING=OFF -DPython_LIBRARIES=R:/envs/mamba/faiss/libs/python311.lib -DPython_EXECUTABLE=R:/envs/mamba/faiss/python.exe "-DCMAKE_TOOLCHAIN_FILE=R:/github_projects/vcpkg/scripts/buildsystems/vcpkg.cmake" -B build .
cmake --build build --config Release --target faiss -j4 --verbose
When building for conda-forge, I get:
AFAICT,
GpuIcmEncoder.{cu,h}
was added between 1.7.1 & 1.7.2, in #1978. CC @KinglittleQThe error seems to only appear for CUDA=11.{0,1}; for 10.2 and 11.2 the build succeeds.