Slashdot Mirror


Insight Into AMD's Linux Driver Development

Cowards Anonymous writes "It's no secret that ATI Technologies has had a rough time in the past delivering display drivers that met the expectations of their customers. When ATI started out producing a FireGL and Radeon Linux driver they for some time were greatly behind NVIDIA's feature-rich driver. The early ATI Linux driver had lacked essential functionality such as PCI Express and x86_64 architecture support and was also affected by stability and performance problems — not to mention a great deal of bugs."

27 of 221 comments (clear)

  1. So ? by BESTouff · · Score: 4, Insightful
    When ATI started out producing a FireGL and Radeon Linux driver they for some time were greatly behind NVIDIA's feature-rich driver.

    And they still are.

  2. The best way... by twoboxen · · Score: 5, Insightful

    to build a customer base is to alienate your existing customer base. I bought an R200-based laptop a couple years ago. ATI decided to just not support those cards in their fglrx driver package one day. Why would I buy from a company who won't continue support for their own products for more than a couple years? I will make every effort to never support them again until they get customer/product support in order. NVIDIA, bravo.

    --
    TODO - Insert Creative/Witty Signature
  3. What is the point of the QA process! by Anonymous Coward · · Score: 1, Insightful

    What is the purpose a two months long QA process, when the result is broken drivers either way?

    The long QA process *guarantees* that the drivers break on new kernels.

    The long QA process isn't worth jack shit. The recent 8.37 drivers locks up my computer 100% of the time.

    Did ATI need 3 months to QA a version check patch for the xserver-xorg-core version number, just to release drivers that no longer work?

    With such shitty drivers, I would think it would be better to at least release early and release often.

  4. what a joke by radarsat1 · · Score: 5, Insightful

    While ATI/AMD is working steadfast in addressing all of these issues and further enhancing their level of Linux support, many of their customers do not realize all of the work that goes into these drivers.


    Whatever. They don't need to do any work. All they need to do is open up the specs, and people will do all the work for them. People aren't bitching that the drivers don't work, people are bitching because they aren't allowed to improve them.

    There's a whole community out there willing to do all the software work from scratch, but they don't have the resources to create the hardware. The hardware developers somehow see this need to provide the software themselves, instead of taking advantage of the community, but then go and do a shoddy job of it. That's why people are annoyed by the whole thing. It could be so much better, with very little effort from ATI, but they steadfastly refuse to play nice, forcing developers to resort to reverse engineering. Same goes to Nvidia by the way, but at least they seem to be a bit more competent in Linux/X.org driver development.

    This whole argument is just a big excuse. We don't want excuses, we want some damn drivers.

    --- someone who's been buying Nvidia since he realized that ATI doesn't work as well on Linux.
    1. Re:what a joke by Kadin2048 · · Score: 5, Insightful

      The hardware developers somehow see this need to provide the software themselves, instead of taking advantage of the community, but then go and do a shoddy job of it.

      Bingo.

      When hardware companies try to make software, the result is almost inevitably shit. There are some exceptions, but big hardware companies tend to see software development as a 'cost center,' an afterthought to be minimized as much as possible, rather than a critical and major part of their product.

      Look at scanners if you want. I've used some great film scanners in the past; brilliant hardware engineering, but coupled with the absolutely shit software that came in the box with it, it was practically a doorstop. To get anything else done, you had to get VueScan or Silverfast -- addon software written by people for whom software is their primary focus.

      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
    2. Re:what a joke by jimstapleton · · Score: 2, Insightful

      Or because they use the OpenGL and DirectX specs to develop their card interfaces, both of which cost money and NDAs to attain, and thus they can't release the specs without risk of violating some copyright or patent, setting the leagal war machines of two companies upon them.

      --
      34486853790
      Connection too slow for X forwarding? Try "ssh -CX user@host"
    3. Re:what a joke by jZnat · · Score: 4, Insightful

      It's also possible (and likely) that they are violating patents they don't have a license for, so giving the specs out might bring light to this. A stupid legal reason rather than a technical reason...

      --
      'Yes, firefox is indeed greater than women. Can women block pops up for you? No. Can Firefox show you naked women? Yes.'
    4. Re:what a joke by Kadin2048 · · Score: 2, Insightful

      Company 'N' produces chips. Some come out great when tested. Some have minor failures when tested. They use software to disable features of the hardware so that the broken bits don't fail since they're not being used. Then you have a premium card and a 'value' card that's cheaper. But sometimes stuff works and they disable it in software anyway so they can still sell 'value' cards and premium cards at different price points. If you were to look at the source, you'd see this and just re-enable those bits to see if they worked, and possibly get a 'better' card than the arbitrarily-disabled one you'd paid for.


      I agree this is an issue. However, I think it's more of a marketing problem than anything. E.g.: Foo, Inc., makes a device called the Widget. The produce two versions; the Widget Jr. and the Widget Pro. The Pro model is advertised as performing x, y, and z; the Jr. only does x. If Foo, Inc. opens its hardware interface to outside developers, they just need to make it clear that even if the Widget Jr. can do y and z, this isn't a supported feature, just an accident. Might they lose a few sales here and there, to hackers who'll purchase the Jr model, with the intention of enabling the unsupported features in hardware? Sure. But most companies aren't kept alive by the 'hacker' market. People want support; they want to know that what they bought is going to work.

      As long as you differentiate your produces in sales and advertising, and give software developers a way to sense what version of the hardware they're working with (so that they can enable the right set of features by default), I don't think that the dilemma you're talking about is world-ending.

      Just to continue more generally: an example of hardware design that I like, would be older serial modems. They had a nice clear line between the hardware and the software, and they interacted over a well-known and widely-supported interface. The hardware guys could make the modem work however they wanted; but it was going to interface with the computer over RS232, take ASCII commands ("ATDT", etc.), and interface to the POTS system on the other end. It's not the greatest example -- the standard command set was just a de facto standard because of the popularity of Hayes-brand modems, and lots of models had different command strings, but you rarely had to worry about actual driver or firmware issues, like you might for a "Winmodem" PCI card today. (And of course, sometimes the modems couldn't agree on the communication protocol for the POTS side of the equation -- anyone remember K56flex vs X2?) But in general, by abstracting the hardware at a fairly high level, and using a standard communications interface, using different types of modems was easy and seldom required actual recoding. That's the goal that hardware designers ought to be aiming for.
      --
      "Ladies and gentlemen, my killbot features Lotus Notes and a machine gun. It is the finest available."
  5. Nvidia is not the competition by crush · · Score: 3, Insightful

    The article is a long excuse explaining why AMD/ATI are unable to release decent GNU/Linux drivers. That's interesting enough as far as it goes: AMD/ATI and Nvidia both have crap closed, proprietary drivers which don't work well, make kernel updgrading difficult and are unauditable for security. So why bother with them? Further ATI have a history of dragging their ass and blocking the release of Free drivers,

    Why bother with this crap? Just get an Intel GMA X3000 integrated motherboard and save time, power, money and hassle due to Intel "getting it" and releasing Open Source drivers and full specs. (You'll probably also be able to benefit from their free wireless drivers.

    If you're into hardcore gaming then you're probably running a PS3 or an Xbox on the side anyway.

    1. Re:Nvidia is not the competition by dc29A · · Score: 2, Insightful

      If you're into hardcore gaming then you're probably running a PS3 or an Xbox on the side anyway.

      Let me know when good RTS, MMO and strategy games come to consoles. Until then, I'll stick with my PC!

    2. Re:Nvidia is not the competition by ceswiedler · · Score: 2, Insightful

      Not for drivers, it's not. The Linux userspace API is extremely stable, and the ABI somewhat less so. But anything inside the kernel can change drastically. That's why Linux hackers want all drivers in the kernel tree, so they can find anything which breaks due to an API change, and fix the problems.

    3. Re:Nvidia is not the competition by kscguru · · Score: 3, Insightful

      That's why Linux hackers want all drivers in the kernel tree, so they can find anything which breaks due to an API change, and fix the problems.
      And that's exactly why hardware manufacturers DON'T want their drivers to live in the kernel tree. They don't get:
      • Bug fix backports: Kernel hackers apply a patch to the latest vanilla kernel, then say backports are the distro's problem. Two distros do, fifteen don't, users of those fifteen scream at the hardware companies for having buggy drivers. With an out-of-tree driver, you just need to update the driver. Windows and OSX are light-years ahead of Linux here.
      • Community contributions: Kernel hackers only add GPLed code; very few even allow dual-license, and certain vocal hackers are zealously GPL-only (to the extent of rewriting code JUST to make it GPLed). Which means the hardware vendor can't take a fix from a linux driver and integrate it into a Windows driver without GPLing that too. The vendor has to either GPL all drivers (Windows included), or maintain two separate trees (GPL and non-GPL), or not open drivers at all. Guess which is easiest / cheapest?
      • Driver API stability: a modern 3D graphics driver is a full OS in its own right, with internal threading models, schedulers, memory management, context switches, etc.; a modern driver needs more than just bugfixes. Every good developer knows the way to keep two large codebases manageable is a stable API between them; the only people who don't seem to get this are otherwise-intelligent Linux kernel hackers.
      • Kernel API freedom: Kernel hackers like stable userspace APIs (for good reason). But hardware vendors don't need to provide stable APIs if they have a shim library that actually talks to the cards (e.g. atioglxx.dll, the ATI OpenGL implementation). It's a lot easier to let the API change rapidly and only commit to a stable API at the library interface (the OpenGL API).
      • Easier work. The Linux kernel development process is optimized for making the kernel hacker's life easier at the expense of the driver developer's (hint: saying "we'll update your driver for you" clashes very badly when the HW vendor is simultaneously making changes). If kernel hackers want to see better device drivers, they need to stop treating drivers as second-class citizens. Microsoft is very good at courting driver developers; Linux is the definition of arrogance.
      --

      A witty [sig] proves nothing. --Voltaire

    4. Re:Nvidia is not the competition by jhol13 · · Score: 2, Insightful

      And, most importantly, they do not get testing. Those who change API/ABI cannot test.

  6. Nothing to see here. by BESTouff · · Score: 4, Insightful

    Basically, TFA says that "ATI has a release cycle". They even have an unofficial bugzilla and an unofficial wiki. Oh, and they'll drop R200 support too. And all that's supposed to make better drivers for Linux one day. I really wish they'd go the Intel way: hire some top-notch developers, give them specs and make them do Free drivers.

  7. Re:Not really surprising by Eukariote · · Score: 1, Insightful

    Sigh, yet another general statement without supporting evidence. I think your post is a sly bit of astroturfing for NVidia. ATI has had WHQL ( http://en.wikipedia.org/wiki/WHQL_Testing ) certified new driver releases for years now. NVidia has only recently been able to get their new releases WHQL qualified. Sure, there is more to drivers, but it indicates that ATI has had a solid development, testing, and qualification regimen in place for a long time.

  8. Re:ATI and Fedora 7 / X.Org 1.3 by drgonzo59 · · Score: 4, Insightful
    The difference is that here Vista is to blame, while on Linuzz everyobody magically undarstand that this is a driver's problem.

    Perhaps because 'Linuzz' is open it is easy to see where the problem lies. With Vista you get huge binary blob and if it's broken you don't know if it is the drivers or Vista -- you can't debug it and look at the source so you call MS tech support and wait 6 months for a service pack or MS tells you to call ATI/AMD and you wait 6 month for a fix. Binary drivers suck that's the problem here...

  9. Where we're at by TheGreatOrangePeel · · Score: 2, Insightful

    I have to say I'm not finding anything insightful in the linked article. It's just a long winded way of saying, "The drivers aren't very good, but AMD/ATI is working hard on it." which we most of us likely already knew. It would have been good to see some insights on what AMD did to improve the driver development process, what impact the open source announcement made, etc.

  10. Re:Misleading summary title? by RingDev · · Score: 3, Insightful

    Yeah, in the same way that Mazda is a part of the big Ford company. But you wouldn't submit and article called "How Ford Builds Cars" and then cover only the Mazda factor's stereo installation.

    -Rick

    --
    "Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
  11. Translation: ATI fails to release OSS drivers by dwheeler · · Score: 3, Insightful
    Wow, a lot of text to paper over the obvious problem: ATI is still failing to release OSS drivers for Linux. The paper describes all the ways that ATI tries to avoid releasing the drivers, and how they all fail to solve the problem. ATI has testing processes, etc., sure - but later on, when X.org and the Linux kernel change, there's no way for me to update the driver - so I have to hope that they will EVENTUALLY do so (leaving me vulnerable to any security problems) OR throw away the ATI card.

    Dell has solved this problem by including the Intel stuff instead for their Linux offering. It's time for ATI to release their drivers as OSS.

    --
    - David A. Wheeler (see my Secure Programming HOWTO)
  12. apologist article by lib3rtarian · · Score: 2, Insightful

    The article basically says "thanks for these power point slides, AMD/ATI, I'll kiss your F**** asses in my article" Seriously, that article sucked.
    Also, when they say that customers don't realize how much work goes into drivers, is that an excuse? I don't care how much work goes into drivers, I know it's hard to do. It's hard to develop the cards to begin with, and to engineer them. The entire process is hard and full of work. The bottom line is that if you can't produce working drivers for a product that you created and manufacture and sell, that you are in the wrong business and wasting my time.

  13. Re:rough start by IllForgetMyNickSoonA · · Score: 2, Insightful

    So you had a rough time gettint the driver to even compile, let alone instal or even (gasp!) work. Then, one day, it just started working.

    So far, so good - this is a typical "ATI on Linux" story, but of the happy-ending sort (which are rather rare, from what I saw so far).

    What I do not understand is which way do they deserve your compliments for providing such sub-par software? I'd bring the card right back to the shop I bought it, demand my money back, and buy a nVidia! I haven't had a problem with nVidia drivers for years now.

  14. Re:Not really surprising by nschubach · · Score: 2, Insightful

    WHQL does not guarantee ease of use, installation or compatibility. It just means that it tells Windows what it wants to hear instead of what it might need to hear.

    --
    Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
  15. Re:Does AMD just not yet it? by mrtom852 · · Score: 2, Insightful

    That article took ages to get approval from the management at ATi (~two months) - if they're that paranoid about releasing information on their release cycle then I don't think we stand a chance of getting any open source/specs from them.

  16. Re:rough start by Chandon+Seldon · · Score: 4, Insightful

    Everything works? So you can use Firefox at a reasonable speed when logged in as a second user now? You can use Beryl now? Those things sure don't work on the X1300 I bought (a horrible mistake) a couple months ago.

    It's really absurd - if they'd just release the programming info for their hardware the X.org drivers would support this stuff inside a week.

    --
    -- The act of censorship is always worse than whatever is being censored. Always.
  17. Re:Not really surprising by gstoddart · · Score: 2, Insightful

    Sigh, yet another general statement without supporting evidence. I think your post is a sly bit of astroturfing for NVidia. ATI has had WHQL ( http://en.wikipedia.org/wiki/WHQL_Testing ) certified new driver releases for years now.

    Hmmm .... "Windows Hardware Quality Laboratories testing" .... is this like buying a PC which says it's "Vista Ready" only to find out that means "well, not Vista with the new GUI stuff, just running with the old GUI"? It's got no credibililty with a lot of people. (eg. , specifally about ATI cards)

    A Windows compatibility rating is frequently not worth the paper it's printed on, except to the company who sells it because people think it will work and buy the product. Many of us don't actually take that to mean anything significant in terms of how well the hardware actually works. It merely seems to mean you paid Microsoft for the right to put on that sticker.

    And, anecdotally, I've known quite a few people over the years to have huge problems with ATI drivers -- on Windows or any other platform. They may have gotten better, but for some of us, they still have a bad reputation for quality when it comes to their drivers.

    Cheers
    --
    Lost at C:>. Found at C.
  18. Re:Not really surprising by Cal+Paterson · · Score: 3, Insightful

    Sigh, yet another general statement without supporting evidence. I think your post is a sly bit of astroturfing for NVidia. ATI has had WHQL certified new driver releases for years now. NVidia has only recently been able to get their new releases WHQL qualified. Sure, there is more to drivers, but it indicates that ATI has had a solid development, testing, and qualification regimen in place for a long time.
    This statement is utterly untrue. WHQL is pretty much just a case of;
    1. Co-operate with MS on driver releases (and institute their "minimum-standard" level of QA)
    2. Pay MS what I'm sure is a large some of money for the privilege
    Lack of WHQL doesn't indicate anything about driver quality apart from that certain companies are co-operating with MS to institute a minimum standard; many, many third parties develop drivers over and above this already. That fact that companies do not do WHQL says less about their hackers' development style than it does about their executives attitudes towards unjustifiable costs.
  19. nVidia by Z34107 · · Score: 2, Insightful

    All they need to do is open up the specs, and people will do all the work for them

    Yes... if ATI opens up their specs, their people will do all the work for nVidia's people. And vice versa.

    I, for one, can understand why there's some animosity towards releasing the blueprints of your state-of-the-art 5-hojillion-manhours-in-the-making video card to all the tubes on the internets.

    Granted, it's not the same as giving nVidia a briefcase of trade secrets, but you have to be careful when your company's existence depends on that extra frame per second your hardware gets in Doom VII 1/2

    --
    DATABASE WOW WOW