“I see what you're getting at - however the game has to play on their minimum specs.“
True but Nvidia have said AMD can use it for free and as it can work on 1 card most gaming PC’s could have support. If done correctly its going be usefull for all gamers and most real games have ATI or Nvidia GPU's and if you have a 3+ year old GPU chance's are you below the recommanded specs.
However I don't believe the 'standard' would be open. The net effect becomes a standard compliance war. Also it's feasible that they can withdraw the support at any time..
Additionally - attempting to comply to a foreign API would cost AMD in terms of delays to deliver to market thus nVidia gain.
”It's the memory bus that is usually the limiting factor (I should point out I've been involved with GPGPU for sometime).”
Memory bus isn’t a problem as very little data will need to be sent across it due to physics. The hard part isn’t sending the data back and forth its processing the data. You need a lot of internal bandwidth to process the data but very little external bandwidth to send the results.
True - intensive bandwidth for computation is kept on the card however if one card is used for physics and one for graphics, it still requires the transfer of data between them - as these are DMA based (ie there's a specific data transfer direct to system memory just as any other hardware device such as a hard disc controller).
There's no interlink for transferring data between the current standard of cards - also the memory controllers cannot execute a fragment program and transfer data not being used simultaneously either).
“One other point - I bet you will not be able to mix and match the AMD, nVidia, Intel cards - thus nVidia”
No one has said anything about needing a 2nd card the only thing that been said is Nvidia has opened the API for anyone to use including AMD for free. It should work fine on 1 card.
It's true this is possible as long as you're not swapping data thus only large memory cards would be able todo this (common sense). Running legacy last gen support for this would make the market bigger.
The current memory requirements are driven by the larger displays and thus higher resolution textures with more processing power too. Add the physics engine and we're already looking at either a ridiculous single card or multiple cards.
From doing development (investigating the automatic vectorisation of code from GCC on GPUs) I can say that data transforms are the killer for any application.
There's a big difference in the data formats required to deliver the best performance on a GPU, graphics and other processing - to get the best results it's an all or nothing approach in the games engine. What's good for SPMD (GPU) is not good for SIMD (CPU). Thus if games developers just add this as an add-on to the API then I don't think there's much benefit for anything useful..
Now with the majority if the customer base not having the GPU horsepower.. they have to either (a) buy a new outright top end GPU, (b) buy new normal GPU and use the old one for PPU, (c) not bother with GPU based physics.. now weigh the PPU against the possibility of running better resolution... (for the average joe) which do you think they'll take?