Originally posted by: Sylvanas
With PhysX enabled games we saw little to no improvement over no Physx- it's not something you should be holding out for. DX11 is expected to bring a new Physics standard which everyone will support (remember Intel will be entering soon aswell) in which case Physx will be tossed to the wayside once again. I don't see the big song and dance over CUDA, it's Nvidia marketing all the way
AMD has it's own proprietary API it's just they don't make a big song and dance about it.
To be frank, AMD's initiative is rather poor at the moment. They don't really have a strong stream computing initiative, it mostly comes off as opposing NVIDIA for the sake of it.
Hardware: NVIDIA has a whole line of Tesla products raging from cards to rackmounts, and numerous vendors to work with. AMD has just single cards, and I haven't seen any of their vendors put together more exotic setups beyond stuffing a few cards in a desktop. The rackmount thing is a really big deal, it's what the big (read: high paying) shops are using since they're doing everything in bulk.
High level language: CUDA and Brook+ are fairly similar, but it's been slowly diverging for some time now. Since CUDA is all in house, NVIDIA has thrown a ton of resources at developing and continuing to develop CUDA, adding things that their users keep asking for such as atomic operations. Brook+ has been rather stagnant; AMD needed a high-level language to compete with CUDA, but they didn't want or have the resources to build something, so they took Brook and made it work with what they have. It's not bad by any means, but it's not as refined as it could be and CUDA is continuing to pull ahead.
Low level language: Here's where the two parties are on equal footing. CUDA's low level language, PTX, and AMD's Computer Abstraction Layer (CAL) are both equally capable. In fact this is where AMD has put the majority of the resources it has dedicated for Stream Computing. You won't find NVIDIA talking about PTX too much since they want everyone working at a higher level, but both PTX and CAL are equally capable of making good use of the underlying hardware.
Ultimately it's a matter of strategy and support. NVIDIA wanted to create an entire GPGPU environment; tools for every level, a variety of hardware, and lots of developer support; a very Intel strategy. AMD is far more low-key, they only intended to have a low-level language, and let others build from there with very little support beyond that. It worked with CTM since NVIDIA had nothing, but now that NVIDIA has CUDA it leaves AMD's offering underwhelming. The lack of high-powered hardware hasn't helped things either.