Hi all, (d-devel blocks my mail, which contains many patches, for the original mail please see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783770 ) Summary ======= In short I'm trying to update the CUDA package for Debian, and patches are provided as attachments. My work is based on the source of nvidia-cuda-toolkit/experimental, i.e. nvidia-cuda-toolkit_6.5.19-1.debian.tar.xz Story ===== I'm the packager of "Caffe", a deep learning framework, whose packaging work is currently stored under debian-science. However I suffered from the Debian's CUDA version a lot. Debian's CUDA/experimental is QUITE OUT OF DATE so that it fails to work with GCC-5. So my Caffe packages just get FTBFS, due to the ancient version of CUDA. However ArchLinux's CUDA version (7.5) is OK for my package, but I don't understand why Debian experimental holds such an .......... 6.5 version, compared with the one Archlinux ships. I know some people don't care about packages in non-free section, or even hate them. But having a new and working CUDA package is really a good news to, at least, deep learning researchers, as the GPU can boost training speed up to 5+ times than CPU. FYI: As far as I know, in my experiments, a Tesla K20C GPU works 5+ times faster than an Intel Xeon W3690. What I want to say is, having an updated CUDA is wonderful for Debian, for productivity use e.g. deep learning research. I like Debian, I like stable systems, however Arch beats Debian at this point. Packaging ========= The CUDA package works fine with my chroot'ed sid, with sources.list = sid + experimental. What makes me happy is, the compilation for gcc-4.9 on *.cu files of Caffe runs well. CUDA-7.0.28 supports up to g{cc,++}-4.9, but still not working with g{cc,++}-5. The caffe builds failed because liking ELFs to v5libs with g{cc,++}-4.9, so it matches my expectation. I'm afraid that I have to bump CUDA to 7.5, to solve the FTBFS of Caffe. which really fixes CUDA's attitude towards GCC-5. Following is my dch, and you can see there are still some items remained to be done: nvidia-cuda-toolkit (7.0.28-1) experimental; urgency=medium * New upstream release 7.0 (March 2015). (Closes: #783770) + SOVERSION Bump from 6.5 => 7.0 * Drop i386 support for all CUDA packages. * Add two new packages, which are introduced by CUDA 7.0: + libnvrtc + libcusolver * Bump libnvvm2 to libnvvm3. * Update *.symbols.in * Update *.install.in + nvidia-cuda-dev: Not installing stuff from open64 directory (e.g. nvopencc), because they are not provided in CUDA 7.0. * [temporary] comment manpage patches out. + [todo] solve a pile of lintianW on manpages * [todo] update watch / watch.in * [todo] update CUDA_VERSION_DRIVER in rules.def * [todo] remove nvopencc-related stuff * [todo] remove libcuinj32-related stuff * [todo] update copyright with new EULA * [todo] update get-orig-source in d/rules * [todo] check the compatible gcc version - d/rules: 's/__GNUC_MINOR__ > 8/__GNUC_MINOR__ > 9/' * [todo] check --list-missing for missing docs. If current patches are OK, then I'd be willing to solve the rest [todo] items. I don't mind importing CUDA 7.5 immediately after uploaded CUDA 7.0 to experimental. :-) Thanks. -- .''`. Lumin : :' : `. `' `- 638B C75E C1E5 C589 067E 35DE 6264 5EB3 5F68 6A8A
Attachment:
signature.asc
Description: This is a digitally signed message part