GPU Select

Balance performance and battery life

Select GPU to meet your needs. Use the NVIDIA GPU to drive maximum performance and support three 4K external monitors. Use the Intel GPU to maximize battery life. This guided solution applies only to Kubuntu Focus M1 and M2. Kubuntu Focus XE model has Intel integrated Iris Xe graphics

Please read the disclaimer before proceeding. This solution is updated regularly. If you have suggestions or requests, please write support@kfocus.org.

Use System Tray Widget

Use System Tray Widget

Click on the System Tray GPU widget to change to your preferred GPU. One may also launch NVIDIA Settings from this interface. This is the simplest way to move between graphics modes. This is available only in 20.04 LTS.

We recommend selecting NVIDIA (Performance Mode) or Intel (Power Saving). We do not recommend using NVIDIA On-Demand (also called Hybrid Graphics Mode) unless you are using the GPU for CUDA, OPTIX, or other GPGPU purposes. The reasons are discussed below.

Check GPU

Check GPU

The NVIDIA Max-Q RTX GPU is needed for demanding tasks such as deep learning, video editing, or gaming. However, if you aren't using those capabilities, switching to the integrated graphics can extend battery life by 2 hours or more in practice.

When the power cable is unplugged the system takes actions to conserve power and extend battery life. The most obvious actions — all of which are Kubuntu Focus optimizations — include:

Using Nvidia On-Demand

We do not recommend using NVIDIA On-Demand (also called Hybrid Graphics Mode) in most circumstances; it keeps both the dGPU and iGPU running and can use significantly more power than Intel Mode alone even when idle. For this reason, we suggest using Intel Mode to conserve power and NVIDIA Performance Mode otherwise. The one exception is when you are using the GPU for CUDA, OPTIX, or other compute purposes. In this case, switching to On-Demand can provide additional VRAM for those jobs. Just remember to switch back when you are done.

When using NVIDIA On-Demand, if you wish to launch an app using the NVIDIA GPU and Vulkan:

# __NV_PRIME_RENDER_OFFLOAD=1 %appname% # Example: __NV_PRIME_RENDER_OFFLOAD=1 vkcube

When using NVIDIA On-Demand, if you wish to launch an app using the NVIDIA GPU and OpenGL:

# __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia %appname% # Example sudo apt-get install mesa-utils # Get glxgears __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxgears

Use Command-line

Konsole TerminalThis is usually faster than using a GUI. If you change the GPU selection, we recommend you reboot to avoid glitches.

prime-select query # Shows 'nvidia' or 'intel' sudo prime-select intel # Select Intel (Power Saving) sudo prime-select nvidia # Select NVIDIA (Performance ) sudo reboot # Do this if you have changed the mode

Use NVIDIA Settings

NVIDIA SettingsThe NVIDIA Settings app is not recommended for most daily tasks, as there are far friendlier mechanisms in place. See the GPU widget in the system tray (at bottom right) to change the GPU in use. See Start Menu > Kubuntu Focus > Video Sync to eliminate video tearing. To adjust screens, see the Displays Guided Solution to select and change refresh rates. However, there are some advanced settings that may be explored here.

Troubleshooting

Q: This seems related to battery life. Where can I learn more?

A: See Battery Management to learn more.

Q: I booted my Kubuntu Focus, and it never got past the splash screen. How do I fix this?

A: NVIDIA Settings and other applications may ask you to save an xorg.conf file. Doing so may disable your internal display from functioning with a GUI upon logout or restart, and you will not be able to sign-in. If this happens, we recommend you remove this file:

You should now be able to sign-in as usual.

Q: Recently with external monitors the display is slow. What could be happening?

A: This commonly happens to Deep Learning scientist who are using NVIDIA On-Demand to maximize VRAM availability for compute jobs. Switch back to NVIDIA Performance as shown above to fix this condition.

Revisions

This is a partial revision history. See the git repository for all entries.

Disclaimer

We try hard to provide a useful solution validated by professionals. However, we cannot anticipate every situation, and therefore cannot guarantee this procedure will work for your needs. Always backup your data and test the solution to determine the correct procedure for you.

THIS SOLUTION IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOLUTION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

KFocus Logo