ATI em apuros - Problemas com certificações WHQL

SilveRRIng

Power Member
Surgiu um problema que não sendo propriamente um bug ou incompatibilidade dará mais dores de cabeça à ATI do que se fosse o caso. Tem a ver com as certificações WHQL. Tendo em conta a importância que isto tem, em termos financeiros, vamos ver o que isto vai dar.

ATI HAS A WHOPPER of a problem in the latest Catalyst drivers. The problem stems from Shader Model 2.0, 2.0b, 3.0, standards and MS certification of those standards. All drivers need to conform to standards, it is the reason standards are indeed standards, you adhere or you don't. If you don't, you are not compliant, and you lose the benefit of whatever said certifications bring.
Microsoft is the self-made god of its own standards, and there is one thing no one will complain about with MS, and that is its brutal enforcement of its standards. People may complain about how the standards are made, or how MS uses them, but the standards themselves have brought us a relatively sane computer industry with hardware and software that works together. MS is understandably bitchy about these standards, and defends them vigorously. If you see the sticker with the logo on it, you know what it brings.

Microsoft has a raft of tests, and the ones that concern graphics all revolve around DirectX. With the release of Direct 9.0c a little less than a month ago, the Vole also released a new round of tests to certify compliance levels. The new DCT level is 5.2, and it basically makes you adhere to SM3.0, and adhere closely. No games are permitted, you play by Microsoft rules or take your ball and go home. Consumers really do win here.

That brings us to ATI again. It doesn't have SM3.0, and won't for a long time in the chip world, although when it is coming is a matter of debate. Nvidia has it now, that much is not in dispute. ATI said it could have done SM3.0 in the current generation of chips, but didn't think the trade off of die space versus performance was worth it. Nvidia did. It is a philosophical difference, and an economic decision, don't read anything more into it than that. Both firms are perfectly capable of releasing a SM3.0 chip if they think it is the right thing to do.

So, to show it is mostly there, ATI coined the term SM2.0b, something that encompasses most of the SM3.0 functionality. When a game is written for SM2.0b, it has most of the advantages of a SM3.0 program, both in looks and in speed. ATI gets the the speed, features and lower die sizes, win/win/win.

There are two problems here though. The first is that most developers won't write a special code path for a single card. Usually, it takes undue attention from a graphics card company, meaning coding help, man hours, and money. For marquee games, ATI sends out the developer hit squad and makes the game shine on its cards. Far Cry was a perfect example of this, Nvidia waved the SM3.0 flag, and no sooner had they done that than a SM2.0b patch was announced. Magic.

Before you get your panties in a bunch in righteous indignation here, let me just say everyone does this, NVidia, ATI, AMD, Intel, and just about any tech company with a brain. They all want an example showing that their part does better than anyone's else. They also want to cut the knees off anyone else that has an advantage. Like I said, this is how the game is played.

The other problem here is that doing this is expensive, and it won't happen for many games. The big names get the optimisation, the ones that don't make headlines are not given the same level of TLC. Would you spend $50K to make sure Bob's Mini Golf v2.93 that occupies the lower level of the value rack runs like stink on your high end GPU? Nope.

One of the most touted features that SM3.0 brings to the table is the one that is causing ATI the most pain, Geometry Instancing. ATI has GI, and has had it for a long time. It works well on their cards also, the benchmarks back this up. What GI does, vastly simplified, is to allow a single copy of a geometry model to be used multiple times in a scene rather than have a model in memory for each use.

What that means is in your new game, Orc Blaster, you may have a model of an orc that takes up 10k for the geometry. If in the climactic battle scene, when you have 1000 orcs running up to the castle in a scene that will make this weekend's Republican convention look organized, you will have 10MB of the same orc model in memory. GI lets you have one copy and use only 10K of memory. The rest of the memory can be used for things like textures, say multi-colored hot pants for the orcs, with pictures of Speed Racer and Spiderman on them. You can see the advantages other than tattooed hot pants.

This feature was heavily touted by Nvidia at E3. It was rightly proud of it, so with the Catalyst 4.8 drivers, ATI turned its version on, stood up waving its hands too. We have it also, SM2.0b is just as good as far as you are concerned. Great, and they are pretty much right, almost as good as far as the real world is concerned.

The problem with all this is Microsoft again, and its insistence on standards. ATI's use of GI does not make it SM3.0, and for some reason, its inclusion appears to make the Catalyst driver fail the latest DCT 5.2 tests. Several people called it an 'unauthorised hack'. So, hack equals fail, equals no certification. No DCT certs, no MS Windows compliance sticker.

The sticker is not all that pretty to begin with, and anyone with a bit of pride will rip it off the computer as her or his first act of case modding. The problem is that the little sticker brings a lot of money in the door, and out the door if you don't have it. Have you ever seen the big warning in XP saying that 'this driver is not certified, if you install it, you could get a virus, and kittens may die, kittens with big eyes'.

People don't like that box, and if you don't know much about computers, this fearsome warning may very well prompt a panic call to tech support. I have had a few from friends myself, so I know it is a real problem. Support calls like that cost money, and negatively impact consumer sentiment. Both are very bad for a manufacturer.

The thing that is much worse is that large OEMs know this, and for reasons of self preservation, and for the bags of MS money that comes with it, they insist on the Microsoft certified logo. So, no logo, little mom and pop vendors like Dell and HP won't ship it. This is considered bad in the industry, and pretty much fatal for a supplier of parts.

So, GI makes the Catalyst 4.8s fail DCT 5.2. DCT loving means no little sticker, and no little sticker means no one with a clue will buy them in quantity. It is hard to overstate the magnitude of this problem.

So what is ATI to do? Simple, pass the older version of the test, and pass with flying colors. That is why you see the logo on the Catalyst 4.8s, they are passing the older version. There is a catch though, an OEM can only use the older test for 90 days after the newer one is released. ATI is taking a perfectly valid course here, completely playing by the rules, but the 90 day freight train is barreling down on them. We are on about day 20 of that train ride, so in 2 months, ATI has problems.

They do have a reasonable out though. I contacted ATI yesterday, and it told me its plans. Here are the relevant parts of the statement from ATI PR.

About a month ago Microsoft released DCT 5.2 for WHQL certification. For future WHQL certification this DCT release has to be adopted in a 90 day timeframe. As part of this new DCT release, instancing is a feature associated with Shader Model 3.0 and we would not pass with this feature enabled. To resolve this issue we have made some adjustments in Catalyst to allow instancing to be user-selectable in the client interface. It will be switched off by default which will allow us to continue WHQL certifying future Catalyst drivers. You can expect this capability within approximately the next 4-6 weeks. From our perspective this is a non-issue and WHQL certification is, and will continue to be, a top priority with each Catalyst release. As far as WHQL certification goes you typically either pass or fail. There is some variance in the rate of pass or fail though.

So, the big hammer of compatibility and standards hits pretty hard, and backpedalling was in order. I don't think it would turn off such a key feature, even if you could turn it back on unless their backs were solidly against the wall. Microsoft has a way of doing that if you step out of line.

The problem for developers is whether they write for it, or just go with the more prevalent 2.0 or 3.0 standards? I am willing to bet, if it is turned off by default, a vanishingly small percentage of owners will turn it on. I have no doubt it will be easy to turn on, and will do everything the old one did, but how many people do you know that haven't figured out how to change their default home page yet? Think those people will delve into graphics driver settings?

If you can safely assume that the OEMs won't ship with it on, it will be off pretty much for good. If you are coding, do you spend dev time an money on that, or just go with the standards? I think this effectively kills GI for ATI in the current chips, and that is a sad thing. It is a really worthwhile feature that is there, and does work. Those pesky standards mean most will never see it though.

One more aside, I was looking for a links about the WHQL stuff, logos, certifications, and other associated information. The Microsoft site will not let me go to most of the pages unless I use IE. Since that is an unacceptable security risk, the only link I was able to dig up was this this one about the value of the Windows certification. If Microsoft allows standards compliant browsers to visit those pages, I will provide links.

Fonte: The Inquirer
 
Não estou a ver grande problema:

To resolve this issue we have made some adjustments in Catalyst to allow instancing to be user-selectable in the client interface. It will be switched off by default which will allow us to continue WHQL certifying future Catalyst drivers. You can expect this capability within approximately the next 4-6 weeks

Done....
 
The problem for developers is whether they write for it, or just go with the more prevalent 2.0 or 3.0 standards? I am willing to bet, if it is turned off by default, a vanishingly small percentage of owners will turn it on. I have no doubt it will be easy to turn on, and will do everything the old one did, but how many people do you know that haven't figured out how to change their default home page yet? Think those people will delve into graphics driver settings?

If you can safely assume that the OEMs won't ship with it on, it will be off pretty much for good. If you are coding, do you spend dev time an money on that, or just go with the standards? I think this effectively kills GI for ATI in the current chips, and that is a sad thing. It is a really worthwhile feature that is there, and does work. Those pesky standards mean most will never see it though.

Para ti, para mim e para a quase totalidade dos users deste fórum não é grave. Diria mesmo que é hábito mexer nos settings da gráfica, mas como diz no quote somos um infima minoria.

Vai haver muita gente a não tirar partido desta feature por causa daquele detalhe. Parece-me que em jogos vindouros será bastante importante, como no RTS do Senhor dos Aneis que aí vem, por exemplo.

Não podemos ver as coisas somente do nosso ponto de vista de "connaisseurs". ;)
 
SilveRRIng disse:
Para ti, para mim e para a quase totalidade dos users deste fórum não é grave. Diria mesmo que é hábito mexer nos settings da gráfica, mas como diz no quote somos um infima minoria.

Vai haver muita gente a não tirar partido desta feature por causa daquele detalhe. Parece-me que em jogos vindouros será bastante importante, como no RTS do Senhor dos Aneis que aí vem, por exemplo.

Não podemos ver as coisas somente do nosso ponto de vista de "connaisseurs". ;)


Pelo que percebi "Geometry Instancing" só está disponivel no SM3.0. A Ati não tem SM3.0.
Logo, qual é o jogo que se vai dar ao traballho de suportar "Geometry Instancing" nas Ati?
Mesmo que o SM2.0b suporte "Geometry Instancing" (suporta?), há algum jogo a aproveitar o o PS2.0b? e a aproveitar esta feature em concreto no PS2.0b?

O mais provavel é que jogos como o RTS do Senhor dos Aneis activem isso nas nVidia e não nas Ati.
 
Resumidamente,

apesar de ser uma feature dos SM3.0 as ATI suportam o GI. O problema é que para a MS ou é sim ou sopas. Ou suportas tudo do SM3.0 e certificamos-te os drivers ou então não suportas nada e certificamos-te os drivers, não há meios termos.

De programação percebo pouquissimo, mas presumo que seria possivel implementar o GI sem obrigatoriamente ter que usar as restantes features dos SM3.0.

O conceito do GI promete, falta ver se na prática tem o impacto que dá a ideia de poder ter. Era uma pena ENORME se as ATI não "possam" tirar partido disto se os programadores não lhe quiserem dar suporte.

Vamos ver...
 
Nao tou a ver o problema... a ATI que faça disable ao GI por default para ter a certificação ao instalar os drivers e logo depois meta um pop-up do tipo "verificámos que nao tem o Geometry instancing ligado, isto aumenta bastante a performance dos drivers sem prejudicar em nada a estabilidade do sistema... deseja activar agora esta opção?"


E pronto... é preciso é saber dar a volta à M$, nao é assim tão complicado, digo eu...
 
O aparecimento de Pop-Up's é sempre perigoso... são "sustos", e muita gente, mesmo lendo o que lá está escrito, assusta-se.

Vai dar ao mesmo essa solução.

O Ideal mesmo é desactivado, e no Control Panel dos drivers, ter lá a opcção para activar. :)
 
Raptor disse:
O aparecimento de Pop-Up's é sempre perigoso... são "sustos", e muita gente, mesmo lendo o que lá está escrito, assusta-se.

Vai dar ao mesmo essa solução.

O Ideal mesmo é desactivado, e no Control Panel dos drivers, ter lá a opcção para activar. :)

Concordo contigo, e decerto que todo o pessoal dos foruns irá concordar, mas tens de entender que 80% ou mais das pessoas que têm pcs não sabe sequer mudar a resolução do desktop quanto mais ir à configuração dos drivers activar uma opção que sabe lá o que quer dizer...

Bottom line é basicamente que a grande massa de mercado que irá comprar placas da ATI vai passar ao lado do GI... não que vá fazer uma diferença enorme mas... é assim que, como não se quer a coisa, se obriga uma empresa a não utilizar a 100% o trabalho que teve numa placa... tudo por causa de um "pormenor" monopolista da M$ de "eu quero, posso e mando". Enfim.
 
Knight disse:
Concordo contigo, e decerto que todo o pessoal dos foruns irá concordar, mas tens de entender que 80% ou mais das pessoas que têm pcs não sabe sequer mudar a resolução do desktop quanto mais ir à configuração dos drivers activar uma opção que sabe lá o que quer dizer...

Bottom line é basicamente que a grande massa de mercado que irá comprar placas da ATI vai passar ao lado do GI... não que vá fazer uma diferença enorme mas... é assim que, como não se quer a coisa, se obriga uma empresa a não utilizar a 100% o trabalho que teve numa placa... tudo por causa de um "pormenor" monopolista da M$ de "eu quero, posso e mando". Enfim.

Pois é, mas segundo o artigo essa funcionalidade, VAI MESMO fazer uma diferença enorme. Além disso, ninguém obriga ninguém a nada. É tudo uma questão de mercado. Acho apenas que foi um erro de estratégia da ATI não aderir aos standards, o que agora a pôs nesta situação. "PS3.0" é desnecessário, não há jogos que tirem proveito, bla bla bla ...
Esqueceram-se foi que, atrás do PS3.0 vinham outras coisas ...
Seja como for, lá vão ter de gastar uma pipa de massa, ou perdendo os grandes distribuidores por um ciclo de produtos ou gastando dinheiro a desenvolver placas complaint.
Faz-me lembrar as desculpas esfarrapadas da Intel aqui há uns meses atrás:
"Processamento a 64 bits actualmente é desnecessário, não se tira partido, bla bla bla", sounds familiar ?? O que é certo é que estão prestes a lançar processadores a 64 bits ... ;)
 
Back
Topo