I'm trying to figure out the best optimisation for my Linux desktop setup to effectively use both Intel HD Graphics and NVIDIA GPU together in sync to get the most out of performance.
I have Intel Core i7-3610QM, and Nvidia GeForce GT 630M (2GB Dedicated Memory) with 8GB RAM.
it's very difficult to get a proper working setup like this on Linux to actually work in a way where Intel HD Graphics is used to render for the Display, and NVIDIA GPU to render applications that heavily rely on OpenGL to work correctly. With the use of
nvidia-settings applet you can choose to set the GPU you want to use with the options of;
Nvidia (Performance Mode) Intel (Power Saving Mode)
The issue here is that if you select one or the other, it disables the other, forcing that one GPU to render everything, from display to applications. What I want to do is have one of those GPU's power for the Display and the other for rendering applications.
Currently I have set Nvidia (Performance Mode), but in doing that it's forced to render desktop and OpenGL rendering for applications, this in turn when running certain applications that uses OpenGL rendering causes spikes in CPU usage from Xorg from it's normal usage of 1% to 5%, to insane spike levels of 50% to 100% across all 8 cores, causing overall performance to lag, and only uses 56% GPU Utilisation from the Nvidia card and around 15% of it's available 2048 MB GPU Memory. It's like it's trying to offload it's work to the Intel CPU even though it shouldn't.
I have checked what it uses to render and it uses
OpenGL renderer string: GeForce GT 630M/PCIe/SSE2
I have a dual-boot setup with Windows, so I've compared differences in performances, and checked the most best optimal performance settings to match, and it's not quite as bad performance, there's not all of that fancy-hoo-ha stuff with the Nvidia drivers for Linux, like you do on Windows so there will be some slight differences overall.