Nouveau Now Supports Page-Flipping, Sync-To-VBlank
Recently the Nouveau power management code emerged and we recently helped out with timing management, but that's not all of the work being done at the moment to this community-driven open-source driver for NVIDIA graphics cards. Committed today to the xf86-video-nouveau DDX driver is support for DRI2 page-flipping and sync-to-vblank support.
A number of commits landed into the xf86-video-nouveau Git tree this morning from Francisco Jerez. Most notably is the addition of DRI2 page-flipping / exchange support and sync-to-vblank capabilities.
KMS page-flipping has been around for a while now with DRI2 having the page-flipping ioctl being around since the Linux 2.6.32 kernel. It's not only used by the X.Org Server, but also by Wayland. Page-flipping can lead to increased performance and is already supported by the open-source Intel and ATI drivers.
The sync-to-vblank support is, of course, designed to reduce tearing. However, to take advantage of sync-to-vblank with Nouveau you need a relatively new kernel to take advantage of the latest Nouveau DRM where it's supported. A GLXVBlank option also needs to be added to the xorg.conf to enable the GLX clients synchronizing to VBlank for eliminating the tearing (it will be nice once it's hooked into the vblank_mode environmental variable).
Another commit this morning hooks in ScheduleWaitMSC and GetMSC, which is for the DRI2 swap and sync extensions.
Pull the latest xf86-video-nouveau Git code and run a newer copy of the Nouveau DRM in the Linux kernel to try out these latest open-source NVIDIA advancements done by the X.Org community.
A number of commits landed into the xf86-video-nouveau Git tree this morning from Francisco Jerez. Most notably is the addition of DRI2 page-flipping / exchange support and sync-to-vblank capabilities.
KMS page-flipping has been around for a while now with DRI2 having the page-flipping ioctl being around since the Linux 2.6.32 kernel. It's not only used by the X.Org Server, but also by Wayland. Page-flipping can lead to increased performance and is already supported by the open-source Intel and ATI drivers.
The sync-to-vblank support is, of course, designed to reduce tearing. However, to take advantage of sync-to-vblank with Nouveau you need a relatively new kernel to take advantage of the latest Nouveau DRM where it's supported. A GLXVBlank option also needs to be added to the xorg.conf to enable the GLX clients synchronizing to VBlank for eliminating the tearing (it will be nice once it's hooked into the vblank_mode environmental variable).
Another commit this morning hooks in ScheduleWaitMSC and GetMSC, which is for the DRI2 swap and sync extensions.
Pull the latest xf86-video-nouveau Git code and run a newer copy of the Nouveau DRM in the Linux kernel to try out these latest open-source NVIDIA advancements done by the X.Org community.
8 Comments