Muxless Optimus Laptop and RHEL/Centos 6.x

Hi

We are finding that all new laptops from our vendor Dell are coming with Optimus muxless video cards.
Older generation had (I guess) a mux and a bios option to disable Optimus, this has now been removed (e.g. the E6430). We are specifically looking at the M3800 and the E5540, the other laptops in their Precision range whilst the do not have Optius are just too heavy. We are looking at other vendors but we are concerned they will likely have the same issue.

The software we wish to run is tested against the NVIDIA proprietary binary driver, and requires 3D graphics. So simple Intel graphics or nouveau won’t work for us.

We have tried using the recommended way to make this work using RANDR, however the version of xrandr shipped with RHEL6.5 doesn’t have the “setprovideroutputsource” flag to allow this to work.

We looked at bumblebee but the manual stage of having to prefix a OpenGL program with “optirun” is a non-starter. This will be confusing for our user community and we aren’t sure that software that launches other 3D programs can have “optirun” easily prefixed to all the subprograms. If you could optirun all programs, that would be good (we don’t care about the power saving, working is more important), but we cannot see a way to do that. Is there?

So basically has anyone (NVIDIA themselves) managed to make the NVIDIA proprietary binary driver work transparently with RHEL/Centos 6.5 on a muxless Optimus laptop?

Thanks

I think the best option is to use only the nVidia GPU. This hurts battery life, but requires the least headache.
I would recommend doing the nVidia driver from ELRepo, as detailed below

If a ‘sudo nvidia-xconfig’ doesn’t work seamlessly, try manually editing /etc/X11/xorg.conf as shown below, I believe the BusID under the Device section is what’s important
https://wiki.archlinux.org/index.php/NVIDIA_Optimus#Using_nvidia

As I said, I’d love to do that, however the xrandr shipped with RHEL6.5 doesn’t have the “setprovideroutputsource” flag to allow this to work. Not sure there is an alternative or a workaround for this.

It seems that the only way to get that would be building the xrandr program from source. That feature apparently exists in RandR 1.4, which CentOS 6.5 has, but the xrandr utility it ships with doesn’t, as you stated. xorg/app/xrandr - Primitive command line interface to RandR extension (mirrored from https://gitlab.freedesktop.org/xorg/app/xrandr)
has the source. Looks like it’s your typical configure, make, make install, though I’d try it without make install. If it works, just hardcode the path to the compiled binary in your ~/.xinitrc, that way any yum updates to the xorg-x11-utils package won’t wipe out your v.1.4.0