Ubuntu 11.04 Doesn't Play With Nouveau Gallium3D
For those NVIDIA customers out there who haven't yet tried one of the test releases of Ubuntu 11.04 but are curious to know whether Canonical has enabled the open-source 3D acceleration driver via Gallium3D, they have not enabled the necessary support by default.
It was talked about early on in the Ubuntu Natty development cycle whether to enable Nouveau Gallium3D support in Ubuntu 11.04 since OpenGL acceleration is required by Canonical's new Unity desktop. Compiz as a compositing window manager is a must in this environment, so having no 3D acceleration and being dependent upon the (useless-for-end-users) Mesa software rasterizer will do no good. In the end though, Nouveau Gallium3D wasn't enabled during the 11.04 cycle so new Ubuntu 11.04 installations will default to the GNOME classic desktop.
Once installing the NVIDIA proprietary driver you will be turned onto the Unity desktop, however. Or if you build the Nouveau Gallium3D support into your own build of Mesa, plus also re-build the libdrm library with the Nouveau experimental API support. Ubuntu 11.04 continues to ship with the Nouveau KMS/DRM code plus the xf86-video-nouveau DDX just as they have done since Ubuntu 10.04 LTS, but they aren't yet comfortable shipping the user-space 3D support.
When using the default graphics stack on Ubuntu 11.04, there's the software rasterizer when using NVIDIA GeForce / Quadro hardware without manually installing any other driver. As being a better option than using the classic Mesa swrast implementation, they could have used the Gallium3D LLVMpipe driver, which at least delivers significantly better CPU-based performance but is still a slow experience for all but the fastest processors on the market. With Fedora 15, Red Hat has now enabled LLVMpipe as the default software acceleration fall-back.
Canonical though isn't fully to blame for not shipping the Nouveau Gallium3D support "out of the box" in Natty. The NVIDIA hardware support when using the Nouveau Gallium3D driver continues to very generation-by-generation and from release-to-release and depending upon what kernel is used. The performance isn't the best when compared to the blob, but the community team aims to support all NVIDIA hardware and they have even been enabling new hardware support quickly (such as open-source Fermi support), but various generations and certain ASICs are less supported than others.
As of late, I've found the best Nouveau support with the GeForce 9 series while the GeForce 8 series seems to have regressed hard with the latest code where as a few months ago that support was great. The reverse-engineered Nouveau support is still a bit of a mess and in a troubled spot, besides now being years into this project with no signs of an official, stable release coming in the foreseeable future. Even when it works only half-way though, usually compositing at least functions and it's certainly better than using Mesa's old software rasterizer.
Hopefully with Ubuntu 11.10 or 12.04 LTS, Canonical will finally decide to enable the Nouveau Gallium3D driver and the LLVMpipe driver as the default software fall-back for all configurations where a 3D hardware driver is not available. With Ubuntu 11.04, serious open-source graphics enthusiasts will want to be building from Git anyways (or using the Ubuntu xorg-edgers PPA) since the Natty Narwhal release is shipping with Mesa 7.10 and not a Mesa 7.11-devel snapshot that offers so many improvements.
Latest Linux Hardware Reviews
Latest Linux Articles
Latest Linux News
Latest Forum Discussions