Public bug reported:
Ubuntu 18.04 LTS ships CUDA 9.1.85 which is broken with provided GCC
compilers in a slightly complex way.
By default, the g++ compiler version is 7.4.0, which is not supported by
CUDA/NVCC 9.1.85.
Next, CUDA/NVCC 9.1.85 should have provided support for g++ 6. But the release
overlooked an incompatibility with std::tuple which renders this compiler
combination not useful either:
https://gist.github.com/ax3l/9489132
Consequently, users that want to use mature C++11/14 features can still switch
to install a g++-5 package on Ubuntu 18.04 but this compiler has another set of
bugs in signatures of gather/scatter intrinsics which were fixed in later GCC
releases. This fix was unfortunately not backported to GCC 5.5 .
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76731
In order to make NVCC+GCC work together on Ubuntu 18.04, I would recommend to
backport the small patches of three intrinsic files with broken signatures to
the g++-5 (specifically the libgcc-5-dev) packages:
https://stackoverflow.com/a/50815334/2719194
Thanks a lot for considering,
Axel
** Affects: gcc-5 (Ubuntu)
Importance: Undecided
Status: New
** Affects: nvidia-cuda-toolkit (Ubuntu)
Importance: Undecided
Status: New
** Also affects: nvidia-cuda-toolkit (Ubuntu)
Importance: Undecided
Status: New
** Description changed:
Ubuntu 18.04 LTS ships CUDA 9.1.85 which is broken with provided GCC
compilers in a slightly complex way.
By default, the g++ compiler version is 7.4.0, which is not supported by
CUDA/NVCC 9.1.85.
Next, CUDA/NVCC 9.1.85 should have provided support for g++ 6. But the
release overlooked an incompatibility with std::tuple which renders this
compiler combination not useful either:
- https://gist.github.com/ax3l/9489132
+ https://gist.github.com/ax3l/9489132
- Consequently, users that want to use mature C++11/14 features can still
switch to install a g++-5 package on Ubuntu 18.04 but this compilers has
another set of bugs in gather/scatter intrinsics which were fixed in later GCC
releases. This fix was unfortunately not backported to GCC 5.5 .
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76731
+ Consequently, users that want to use mature C++11/14 features can still
switch to install a g++-5 package on Ubuntu 18.04 but this compiler has another
set of bugs in gather/scatter intrinsics which were fixed in later GCC
releases. This fix was unfortunately not backported to GCC 5.5 .
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76731
In order to make NVCC+GCC work together on Ubuntu 18.04, I would recommend to
backport the small patches of three intrinsic files with broken signatures to
the g++-5 (specifically the libgcc-5-dev) packages:
- https://stackoverflow.com/a/50815334/2719194
+ https://stackoverflow.com/a/50815334/2719194
Thanks a lot for considering!
Axel
** Description changed:
Ubuntu 18.04 LTS ships CUDA 9.1.85 which is broken with provided GCC
compilers in a slightly complex way.
By default, the g++ compiler version is 7.4.0, which is not supported by
CUDA/NVCC 9.1.85.
Next, CUDA/NVCC 9.1.85 should have provided support for g++ 6. But the
release overlooked an incompatibility with std::tuple which renders this
compiler combination not useful either:
https://gist.github.com/ax3l/9489132
Consequently, users that want to use mature C++11/14 features can still
switch to install a g++-5 package on Ubuntu 18.04 but this compiler has another
set of bugs in gather/scatter intrinsics which were fixed in later GCC
releases. This fix was unfortunately not backported to GCC 5.5 .
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=76731
In order to make NVCC+GCC work together on Ubuntu 18.04, I would recommend to
backport the small patches of three intrinsic files with broken signatures to
the g++-5 (specifically the libgcc-5-dev) packages:
https://stackoverflow.com/a/50815334/2719194
- Thanks a lot for considering!
+ Thanks a lot for considering,
Axel
** Description changed:
Ubuntu 18.04 LTS ships CUDA 9.1.85 which is broken with provided GCC
compilers in a slightly complex way.
By default, the g++ compiler version is 7.4.0, which is not supported by
CUDA/NVCC 9.1.85.
Next, CUDA/NVCC 9.1.85 should have provided support for g++ 6. But the
release overlooked an incompatibility with std::tuple which renders this
compiler combination not useful either:
https://gist.github.com/ax3l/9489132
- Consequently, users that want to use mature C++11/14 features can still
switch to install a g++-5 package on Ubuntu 18.04 but this compiler has another
set of bugs in gather/scatter intrinsics which were fixed in later GCC
releases. This fix was unfortunately not backported to GCC 5.5 .
+ Consequently, users that want to use mature C++11/14 features can still
switch to install a g++-5 package on Ubuntu 18.04 but this compiler has another
set of bugs in