ati open source drivers, which is best?
I have installed gentoo and after some rushed decisions, I found that ati official drivers are not compatible with kernel 2.6.25 or the new Xorg 7.4. So Im dealing with xf86-video-ati, which is doesnt provides enough perfomance for gaming or even basic development. I would like to know if radeonhd is a better choice for such tasks. Has somebody tried it? My card is an HD2600 XT.
Neither radeon nor radeonhd supports acceleration on r6xx and newer hw yet. Support it in progress.
What about radeonhd 1.2.3? I read it has DRI support, but I cant find if it works with r600.
Neither the radeon nor radeonhd driver (nor drm, nor mesa) include code to use the 3d engine on 6xx/7xx parts. That's what we are working on now. Acceleration support for 5xx was able to come out bit-by-bit since it still had the 2D acceleration hardware from earlier GPUs, so you could be using 2D acceleration while the devs were working on 3D support.
Starting with 6xx the 2D engine goes away completely and the 3D engine is totally different, so 6xx/7xx support is taking longer than 5xx did and *seems* to be taking even longer than that because you aren't seeing incremental releases of functionality. The good news is that 6xx and 7xx support should arrive at more or less the same time since the 3D programming is pretty similar (although the hardware is very different) and we are working on the two generations in parallel.
Once we get the 6xx/7xx 3D engine code out we should be over the biggest hurdle, and support for future ASICs should happen more quickly.
Last edited by bridgman; 10-21-2008 at 08:17 PM.
Can anyone say anything as to the timeframe of all this? The fglrx driver does not seems to move in a direction that gets good functionality for my rv3780 based board (r6xx) and since video is depending on 3D, I have no video rendering in either Radeon or RadeonHD.
Originally Posted by bridgman
The opening of specs by ATI/AMD was promising enough for me to buy a ATI video card after using Nvidia, but so far it turns out to be a huge disappointment. Apparently the easiest way to get decent play back is to buy a budget NVidia PCI-E card and leave the ATI card for what it is.
I do appreciate all the effort of all the developpers involved. But if it takes years to support newer cards, linux will never become cutting edge at all. Probably my view of the development for ATI has been naieve.
I think that you don't have to release all specs before you can publish an open source driver - Intel published specs too, but only after the driver was out. ATI tries to do publish the specs first. There is nothing wrong with it, but why not publish a driver first while working on the public specs? Then the time to finish the driver would be shorter - as ATI dev can access the unofficial specs anyway. If hardware is sold it is clear that it does not work without a driver - and to force users to use fglrx (which is definitely way behind nvidia binary) is no good thing - especially if they only want to watch some videos - and play with Win. Also many new users don't get how bad the fglrx driver is - until they are have to use em. When they are used to nvidia hardware first it is often a huge disappointment.
Last edited by Kano; 10-24-2008 at 06:56 AM.
Agreed. That's what we are doing this time, including making the unofficial specs and code available to specific developers outside of ATI.
Originally Posted by Kano
In the case of 5xx we felt that getting specs out first was best because those specs would also help with earlier generations of chips. Since the drivers are open source we need to deal with IP review issues either way, but the benefit of releasing drivers first is that we only have to review and clear exactly what is needed to make the driver work, not all of the additional information contained in the documentation.
It's important to remember that we only announced the project a year or so ago (Sep 07). The results so far have been :
Originally Posted by hansch
- full display/modesetting support for 5xx/6xx - Dec 07 (3 months)
- acceleration support for R5xx including 3D, tex vid, EXA - Jun 08 (6 months)
- acceleration support for R6xx/7xx - in progress now
We are now well into the same acceleration support for 6xx/7xx - first triangle was a couple of months ago, and now we have most of the acceleration sequences worked out and are starting to integrate them into the existing driver framework.
It has definitely taken longer than we expected to get the new 3D engine on 6xx/7xx figured out and working for us. I think we are past that hurdle now though.
One thing worth mentioning here is that there are really four different driver-related activities going on right now for ATI graphics, each consuming some development resources from the community :
- rewriting the bottom end of the existing driver framework to fix long-standing problems (made possible by 5xx specs)
- rearchitecting the driver framework to add kernel modesetting and memory management (overlaps with above task a bit)
- extending the 3D driver to include higher levels of GL support (fog coords, occlusion queries etc)
- adding support for newer asics (6xx/7xx acceleration, 710/730 display/modesetting)
Bottom line here is that there is a lot of progress being made; the problem is that most of it does not directly help you. If you were expecting fully accelerated drivers for three generations of GPUs within a few months after the project started that was certainly more optimistic than what we were thinking. I figured it would take about a year to get to that point; it's looking more like 15 months than 12 right now. The one point I wish I had made more clear a year ago is that initial support for the new 3D engine in 6xx/7xx was going to be the hardest part of the project -- we suspected it at the time but it wasn't until we started working on 6xx/7xx accel earlier this year that it became clear just how much work it was going to be.
Last edited by bridgman; 10-24-2008 at 09:19 AM.
I'd like to ask, will R6xx/7xx 3D acceleration be supported with a gallium driver or starting with a mesa one?
Originally Posted by bridgman
Starting right now with a gallium driver will give Xv/XvMC/eventually VAAPI (through G3DVL) and 2D acceleration (through xf86-video-modesetting or future gallium layer for 2D) for free. Also appears that gallium driver are easy to write than mesa ones.
Last edited by oibaf; 10-24-2008 at 10:28 AM.
The first implementation will be based on the existing 5xx mesa driver, since that will make the functionality available to the broadest range of users. The generic modesetting driver requires both kernel-modesetting and Gallium in order to function, and we are still a few months away from those being available to everyday users.
Writing a Gallium driver from scratch is probably easier than writing a "classic mesa" driver from scratch, but we are not writing from scratch here -- just adding 6xx/7xx support to an existing driver. The same applies to Xv - we aren't writing from scratch, just adding 6xx/7xx support to the existing Xv driver code.
Last edited by bridgman; 10-24-2008 at 10:34 AM.
Will Gallium provide better 3D performance than Mesa?
Also, will the OpenSource drivers (radeon/radeonhd) suffer from problems with WiNE? or can we expect compatibility similar to that of nVIDIA?