una-dinosauria / Rayuela.jl

Code for my PhD thesis. Library of quantization-based methods for fast similarity search in high dimensions. Presented at ECCV 18.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Use CUDAapi for building artefacts

maleadt opened this issue · comments

Rayuela.jl/deps/build.jl

Lines 58 to 59 in a3a1bed

`/usr/local/cuda/bin/nvcc -ptx ../src/cudautils.cu -o cudautils.ptx -arch=compute_35`
`/usr/local/cuda/bin/nvcc --shared -Xcompiler -fPIC -shared ../src/cudautils.cu -o cudautils.so -arch=compute_35`

While looking at https://discourse.julialang.org/t/freeing-memory-in-the-gpu-with-cudadrv-cudanative-cuarrays/10946, I ran into issues building the package because you can't assume nvcc lives there and you might need to pass -ccbin options. CUDAapi does that for you, see eg. https://github.com/JuliaGPU/CUDAnative.jl/blob/1833651e180fa71157a31f0b6d2588a0ad338c7e/test/perf/launch_overhead/build.jl

Same with the arch_ options, better figure that out accurately by looking at CUDAdrv, for maximal compatibility with user GPUs.