NVIDIA Contributes Re-Clocking Code To Nouveau For The GK20A
One of the biggest challenges with the Nouveau open-source graphics driver for NVIDIA graphics hardware in recent times has been with regard to GPU / video memory re-clocking. As a minor step forward, NVIDIA has contributed re-clocking patches for the GK20A graphics processor.
Re-clocking has long been a big challenge for the Nouveau driver to obtain maximum graphics performance while also maintaining optimal performance-per-Watt and being efficient while idling. With the Linux 3.16 kernel for select generations of GPUs is faster performance but it can be buggy while now today for Tegra K1 owners NVIDIA has come to the table with re-clocking code for the "GK20A" GPU found within this high-end NVIDIA ARM SoC.
NVIDIA's Alexandre Courbot announced, "This series adds support for reclocking on GK20A. The first two patches touch the clock subsystem to allow GK20A to operate, by making the presence of the thermal and voltage devices optional, and allowing pstates to be provided directly instead of being probed using the BIOS (which Tegra does not have). The last patch adds the GK20A clock device. Arguably the clock can be seen as a stripped-down version of what is seen on NVE0, however instead of using NVE0 support has been written from scratch using the ChromeOS kernel as a basis."
While it's nice to see NVIDIA's contribution by NVIDIA, this re-clocking work won't benefit most NVIDIA GPUs out there. Due to the Tegra K1 / GK20A lacking a BIOS, the performance states are statically defined within the code, etc. The changes in part are also based upon Google's ChromeOS Linux kernel driver. Compared to their desktop GPUs, NVIDIA has been investing in open-source support for the GK20A GPU that includes Mesa/Gallium3D driver changes. NVIDIA's new ARM chip is also able to run Wayland/Weston.
Re-clocking has long been a big challenge for the Nouveau driver to obtain maximum graphics performance while also maintaining optimal performance-per-Watt and being efficient while idling. With the Linux 3.16 kernel for select generations of GPUs is faster performance but it can be buggy while now today for Tegra K1 owners NVIDIA has come to the table with re-clocking code for the "GK20A" GPU found within this high-end NVIDIA ARM SoC.
NVIDIA's Alexandre Courbot announced, "This series adds support for reclocking on GK20A. The first two patches touch the clock subsystem to allow GK20A to operate, by making the presence of the thermal and voltage devices optional, and allowing pstates to be provided directly instead of being probed using the BIOS (which Tegra does not have). The last patch adds the GK20A clock device. Arguably the clock can be seen as a stripped-down version of what is seen on NVE0, however instead of using NVE0 support has been written from scratch using the ChromeOS kernel as a basis."
While it's nice to see NVIDIA's contribution by NVIDIA, this re-clocking work won't benefit most NVIDIA GPUs out there. Due to the Tegra K1 / GK20A lacking a BIOS, the performance states are statically defined within the code, etc. The changes in part are also based upon Google's ChromeOS Linux kernel driver. Compared to their desktop GPUs, NVIDIA has been investing in open-source support for the GK20A GPU that includes Mesa/Gallium3D driver changes. NVIDIA's new ARM chip is also able to run Wayland/Weston.
11 Comments