On 2014-12-02 22:36, Rebecca N. Palmer wrote: >> what would happen to >> an Nvidia-hardware-only system with nvidia kernel module (which >> blacklists the nouveau kernel module) + nouveau graphics userspace, >> which under [nvidia-kernel-dkms Recommends: nvidia-driver | libcuda1] >> would be the result of trying to install OpenCL on >> a previously nouveau-using system. > > Did you test this (i.e. "apt-get install nvidia-opencl-icd libcuda1" > with Nvidia hardware but no already-installed *nvidia* packages)? > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=751082#27 suggests the > result is no graphics. > > (Having it be a Recommends: nvidia-driver rather than a hard Depends > already allows the "headless GPGPU" case, and cutting nvidia-opencl-icd > -> libcuda1 is enough to fix the original "accidental nvidia-opencl-icd > on inappropriate hardware" problem.) > > _______________________________________________ > pkg-nvidia-devel mailing list > pkg-nvidia-de...@lists.alioth.debian.org > http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-nvidia-devel
# apt-get install --install-recommends nvidia-opencl-icd libcuda1 Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: cpp-4.8 dkms gcc-4.8 glx-alternative-mesa glx-alternative-nvidia glx-diversions kmod libasan0 libgcc-4.8-dev libkmod2 libnvidia-compiler libnvidia-ml1 linux-compiler-gcc-4.8-x86 linux-headers-3.16.0-4-amd64 linux-headers-3.16.0-4-common linux-headers-amd64 linux-kbuild-3.16 menu nvidia-alternative nvidia-installer-cleanup nvidia-kernel-common nvidia-kernel-dkms nvidia-modprobe nvidia-opencl-common nvidia-smi nvidia-support ocl-icd-libopencl1 Suggested packages: gcc-4.8-locales gcc-4.8-multilib gcc-4.8-doc libgcc1-dbg libgomp1-dbg libitm1-dbg libatomic1-dbg libasan0-dbg libtsan0-dbg libquadmath0-dbg libgl1-mesa-glx libgl1 nvidia-driver nvidia-cuda-mps menu-l10n gksu kde-runtime ktsuss opencl-icd Recommended packages: linux-image libcuda1-i386 The following NEW packages will be installed: cpp-4.8 dkms gcc-4.8 glx-alternative-mesa glx-alternative-nvidia glx-diversions kmod libasan0 libcuda1 libgcc-4.8-dev libkmod2 libnvidia-compiler libnvidia-ml1 linux-compiler-gcc-4.8-x86 linux-headers-3.16.0-4-amd64 linux-headers-3.16.0-4-common linux-headers-amd64 linux-kbuild-3.16 menu nvidia-alternative nvidia-installer-cleanup nvidia-kernel-common nvidia-kernel-dkms nvidia-modprobe nvidia-opencl-common nvidia-opencl-icd nvidia-smi nvidia-support ocl-icd-libopencl1 0 upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.3 MB/37.4 MB of archives. After this operation, 136 MB of additional disk space will be used. @@@ doing this in a sid chroot ... # update-alternatives --display nvidia nvidia - auto mode link currently points to /usr/lib/nvidia/current /usr/lib/nvidia/current - priority 340 slave nvidia--libcuda.so-x86_64-linux-gnu: /usr/lib/x86_64-linux-gnu/nvidia/current/libcuda.so slave nvidia--libcuda.so.1-x86_64-linux-gnu: /usr/lib/x86_64-linux-gnu/nvidia/current/libcuda.so.1 slave nvidia--libnvidia-ml.so.1-x86_64-linux-gnu: /usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-ml.so.1 slave nvidia--libnvidia-opencl.so.1-x86_64-linux-gnu: /usr/lib/x86_64-linux-gnu/nvidia/current/libnvidia-opencl.so.1 slave nvidia--nvidia-modprobe.conf: /etc/nvidia/nvidia-modprobe.conf slave nvidia--nvidia-smi: /usr/lib/nvidia/current/nvidia-smi slave nvidia--nvidia-smi.1.gz: /usr/lib/nvidia/current/nvidia-smi.1.gz Current 'best' version is '/usr/lib/nvidia/current'. @@@ as expected # update-alternatives --display glx update-alternatives: error: no alternatives for glx @@@ Oops, let's install X, too # apt-get install --install-recommends xserver-xorg # update-alternatives --display glx glx - auto mode link currently points to /usr/lib/mesa-diverted /usr/lib/mesa-diverted - priority 5 slave glx--libEGL.so.1-x86_64-linux-gnu: /usr/lib/mesa-diverted/x86_64-linux-gnu/libEGL.so.1 slave glx--libGL.so.1-x86_64-linux-gnu: /usr/lib/mesa-diverted/x86_64-linux-gnu/libGL.so.1 Current 'best' version is '/usr/lib/mesa-diverted'. @@@ as expected nouveau is not blacklisted ... the kernel module would probably get loaded by a cuda application Interesting testcase, need to think more about it. For stretch :-) There is a lever missing here to enable/disable nvidia. /etc/modules-load.d/ may be useful :-) And probably a new utility needs to be written to switch the system into any of these (proprietary) gpu modes: * none (xorg,mesa only) * nvidia native * nvidia optimus * fglrx native * fglrx the-thing-that-is-equivalent-to-optimus * bumblebee whatever It must be possible to have *all* installed at the same time and to switch between them without package removal (since only one can be active at a time). (and we have at least 2 different nvidia drivers available, more likely 3: current, 340xx, 304xx) Andreas -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org