From Fedora Project Wiki
 
(10 intermediate revisions by 3 users not shown)
Line 2: Line 2:


== Summary ==
== Summary ==
The Direct Rendering Infrastructure (DRI) was written ~10 years ago and its feature set was based on the graphics cards' capabilities at that time.  It is time to update the infrastructure to take advantage of today's graphics cards' capabilities.  DRI2 enables several new features including:
Improve Direct Rendering Infrastructure
* Accelerated rendering to offscreen pixmaps
* Support for GLXFBConfigs
* Support for Pbuffers and Framebuffer Objects (FBOs)
* Software cursors and DRI are now compatible - great for MPX


== Owner ==
== Owner ==
* Name: KristianHoegsberg
* Name: [[KristianHoegsberg | Kristian Høgsberg]]
* Email: '''FOLLOW THE LINK'''


== Current status ==
== Current status ==
* Targeted release: [[Releases/11 | Fedora 11]]
* Targeted release: [[Releases/11 | Fedora 11]]
* Last updated: 2008-11-10
* Last updated: 2009-03-02
* Percentage of completion: 0%
* Percentage of completion: 100%


== Detailed Description ==
== Detailed Description ==
<!-- Expand on the summary, if appropriateA couple sentences suffices to explain the goal, but the more details you can provide the better. -->
The Direct Rendering Infrastructure (DRI) was written ~10 years ago and its feature set was based on the graphics cards' capabilities at that timeIt is time to update the infrastructure to take advantage of today's graphics cards' capabilities. DRI2 enables several new features including:
* Accelerated rendering to offscreen pixmaps
* Support for GLXFBConfigs
* Support for Pbuffers and Framebuffer Objects (FBOs)
* Software cursors and DRI are now compatible - great for MPX


== Benefit to Fedora ==
== Benefit to Fedora ==
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
We'll be one step closer to be able to ship a compositing manager by default.


== Scope ==
== Scope ==
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? -->
The work has been done upstream and the packages are built.  The feature is present and work, we just need to fix the remaining bugs at this point.


== Test Plan ==
== How To Test ==
<!-- This does not need to be a full-fledged documentDescribe the dimensions of tests that this feature is expected to pass when it is done.  If it needs to be tested with different hardware or software configurations, indicate them.  The QA team will turn this information into a more complete test planThe more specific you can be, the better the final test plan will be.  
We hope to enable DRI2 on as much hardware as possible for Fedora 11At this point, DRI2 is working for all Intel graphics hardware and there's a good chance we'll support a good range of ATI Radeon chipsets as wellWe might even get nVidia support through nouveau, but that's a slim chance.


A good Test Plan should answer these four questions:
If your hardware is supported DRI2 will be enabled.  To check whether that's the case look for a line like this in /var/log/Xorg.0.log:


0. What special hardware / data / etc. is needed (if any)?
(II) intel(0): direct rendering: DRI2 Enabled
1. How do you prepare your system to test this feature? What packages
need to be installed, config files edited, etc.?
2. What specific actions do you perform to check that the feature is
working like it's supposed to?
3. What are the expected results of those actions?


-->
To test that it's working correctly, first verify that the desktop renders correctly.  Enable compiz or another compositing manager and try running glxgears from the glx-utils rpm.  The gears should render normally and you should be able to put other windows on top of the gears.  If you compositing manager of choice provides a spinning cube, the gears should follow the cube around as you spin it.  More details here: http://hoegsberg.blogspot.com/2007/08/redirected-direct-rendering.html.


== User Experience ==
== User Experience ==
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result? Describe what they will see or notice. -->
When running a compositing manager 3d applications will no longer be broken.  On the other hand, if not using 3d the X server won't allocate the DRI buffers, and more video memory will be available. More here: http://hoegsberg.blogspot.com/2007/08/redirected-direct-rendering.html


== Dependencies ==
== Dependencies ==
<!-- What other packages (RPMs) depend on this package? Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
DRI2 has been a dependency for correctly working compiz and other composited desktops for as long as they have been available. We've just shipped them with broken 3d anyway.


== Contingency Plan ==
== Contingency Plan ==
Line 54: Line 50:


== Release Notes ==
== Release Notes ==
<!-- The Fedora Release Notes inform end-users how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need. This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
For the hardware where DRI2 is supported we ship it on by default.  If the feature doesn't work correctly it can be disabled in /etc/X11/xorg.conf.


----
TODO: Need to mention how to create /etc/X11/xorg.conf if it doesn't exist.


[[Category:FeaturePageIncomplete]]
[[Category:FeatureAcceptedF11]]
<!-- When your feature page is completed and ready for review -->
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 08:28, 9 June 2009

Improve Direct Rendering Infrastructure

Summary

Improve Direct Rendering Infrastructure

Owner

Current status

  • Targeted release: Fedora 11
  • Last updated: 2009-03-02
  • Percentage of completion: 100%

Detailed Description

The Direct Rendering Infrastructure (DRI) was written ~10 years ago and its feature set was based on the graphics cards' capabilities at that time. It is time to update the infrastructure to take advantage of today's graphics cards' capabilities. DRI2 enables several new features including:

  • Accelerated rendering to offscreen pixmaps
  • Support for GLXFBConfigs
  • Support for Pbuffers and Framebuffer Objects (FBOs)
  • Software cursors and DRI are now compatible - great for MPX

Benefit to Fedora

We'll be one step closer to be able to ship a compositing manager by default.

Scope

The work has been done upstream and the packages are built. The feature is present and work, we just need to fix the remaining bugs at this point.

How To Test

We hope to enable DRI2 on as much hardware as possible for Fedora 11. At this point, DRI2 is working for all Intel graphics hardware and there's a good chance we'll support a good range of ATI Radeon chipsets as well. We might even get nVidia support through nouveau, but that's a slim chance.

If your hardware is supported DRI2 will be enabled. To check whether that's the case look for a line like this in /var/log/Xorg.0.log:

(II) intel(0): direct rendering: DRI2 Enabled

To test that it's working correctly, first verify that the desktop renders correctly. Enable compiz or another compositing manager and try running glxgears from the glx-utils rpm. The gears should render normally and you should be able to put other windows on top of the gears. If you compositing manager of choice provides a spinning cube, the gears should follow the cube around as you spin it. More details here: http://hoegsberg.blogspot.com/2007/08/redirected-direct-rendering.html.

User Experience

When running a compositing manager 3d applications will no longer be broken. On the other hand, if not using 3d the X server won't allocate the DRI buffers, and more video memory will be available. More here: http://hoegsberg.blogspot.com/2007/08/redirected-direct-rendering.html

Dependencies

DRI2 has been a dependency for correctly working compiz and other composited desktops for as long as they have been available. We've just shipped them with broken 3d anyway.

Contingency Plan

DRI2 co-exists with the original DRI. Individual drivers can have support for either one (or both).

Documentation

Links to related documentation:

Release Notes

For the hardware where DRI2 is supported we ship it on by default. If the feature doesn't work correctly it can be disabled in /etc/X11/xorg.conf.

TODO: Need to mention how to create /etc/X11/xorg.conf if it doesn't exist.