Pytorch: [build/nccl] n'a pas réussi à compiler libnccl sur Debian instable

Créé le 2 févr. 2017  ·  3Commentaires  ·  Source: pytorch/pytorch

Échec de la création de la version CUDA de pytorch (sans CUDNN) avec la dernière source.

OS : debian instable/expérimental
Compilateur : gcc-5, g++-5
CUDA : 8.0.44 (paquet fourni par Debian)

journal de construction : http://debomatic-amd64.debian.net/distribution#experimental/pytorch-contrib/0.1.7~1/buildlog

-- The C compiler identification is GNU 5.4.1
-- The CXX compiler identification is GNU 5.4.1
-- Check for working C compiler: /usr/bin/gcc-5
-- Check for working C compiler: /usr/bin/gcc-5 -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/g++-5
-- Check for working CXX compiler: /usr/bin/g++-5 -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found CUDA: /usr (found suitable version "8.0", minimum required is "7.0") 
-- Configuring done
-- Generating done
-- Build files have been written to: /<<PKGBUILDDIR>>/torch/lib/build/nccl
make[2]: Entering directory '/<<PKGBUILDDIR>>/torch/lib/build/nccl'
make[3]: Entering directory '/<<PKGBUILDDIR>>/torch/lib/build/nccl'
make[4]: Entering directory '/<<PKGBUILDDIR>>/torch/lib/build/nccl'
Scanning dependencies of target nccl
make[4]: Leaving directory '/<<PKGBUILDDIR>>/torch/lib/build/nccl'
make[4]: Entering directory '/<<PKGBUILDDIR>>/torch/lib/build/nccl'
[100%] Generating lib/libnccl.so
make[5]: Entering directory '/<<PKGBUILDDIR>>/torch/lib/nccl'
ls: cannot access '/usr/lib64/libcudart.so.*': No such file or directory
ls: cannot access '/usr/lib64/libcudart.so.*': No such file or directory
Grabbing  src/nccl.h                > /<<PKGBUILDDIR>>/torch/lib/build/nccl/include/nccl.h
Compiling src/libwrap.cu            > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/libwrap.o
Compiling src/core.cu               > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/core.o
Compiling src/all_gather.cu         > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/all_gather.o
Compiling src/all_reduce.cu         > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/all_reduce.o
Compiling src/broadcast.cu          > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/broadcast.o
Compiling src/reduce.cu             > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/reduce.o
Compiling src/reduce_scatter.cu     > /<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/reduce_scatter.o
src/core.cu(724): error: expected an expression

src/core.cu(724): error: expected an expression

2 errors detected in the compilation of "/tmp/tmpxft_00002c02_00000000-13_core.compute_52.cpp1.ii".
Makefile:98: recipe for target '/<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/core.o' failed
make[5]: *** [/<<PKGBUILDDIR>>/torch/lib/build/nccl/obj/core.o] Error 2

Je n'ai aucune idée à ce sujet...

Commentaire le plus utile

@apaszke Merci, le correctif consiste à exporter les deux variables d'environnement :

export CUDA_HOME=/usr
export CUDA_LIB=/usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

Tous les 3 commentaires

Si vous regardez ici , vous verrez que cela échoue, car ls ne peut pas trouver libcudart.so , et c'est pourquoi CUDA_MAJOR et CUDA_MINOR finissent par être vides cordes. Je ne sais pas à quoi ressemble un paquet debian CUDA, mais vous n'avez probablement pas libcudart.so avec une extension de version.

Peut-être que CUDA_VERSION=8.0 pp setup.py build aide ?

@apaszke Merci, le correctif consiste à exporter les deux variables d'environnement :

export CUDA_HOME=/usr
export CUDA_LIB=/usr/lib/$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
Cette page vous a été utile?
0 / 5 - 0 notes