23:39 "...and some graphics vendors make the really really bad decision in my eyes to sometimes behind peoples backs say oh we've got an extra processor free here let's offload some of our vertex processing. Bad graphics vendors that's not a good thing to do from a developer's standpoint because it adds so much more uncertainty and different levels of bugs for us and variability on that..."
So is that both ATI and NVidia?
Jawed
It is interesting to note that the power consumption varies between 3DMark and the test that saturates pixel shaders for NVIDIA and ATI.
As far as I know 3dmark05 is vertex setup bound in game tests 1 and 2. You can run the first two tests @ 800x600 and 1600x1200 with 4xAA/16xAF and get virtually the same performance. Disabling a few vertex units ((usually takes 2-3 on a 7900GT SLI setup. One wont be enough)) and you'll start noticing diminishing results in those tests. Game Test 3 is a little different and seems to scale better with resolution/pixel units. Its gonna vary though depending on the amount rendering power available of course.
I wonder if comparing power draw between the first multicore-CPU NV driver to offer performance improvements with Quake 4 and the previous one would shed any light on this. Maybe also with pre- and post- Q4 multicore versions (IIRC, Q4 was explicitly patched for multicore shortly after NV's driver).Unfortunately there aren't any 3DMk05 scores to help fill in the puzzle.
Sounds reasonable to me.Or maybe I'm not reading 3DM05's vertex setup prediliction correctly. The way I see it, if NV offloads that to a multicore CPU without taking into account the CPU's load, then P95 hogging one or both cores may compromise any vertex work NV's drivers send to the CPU, therefore leaving the rest of the GPU (the fragment shaders [and I guess ROPs, tho I'm not sure how power hungry they are]) hanging, thus leading to the reduced power draw.
I wonder if comparing power draw between the first multicore-CPU NV driver to offer performance improvements with Quake 4 and the previous one would shed any light on this. Maybe also with pre- and post- Q4 multicore versions (IIRC, Q4 was explicitly patched for multicore shortly after NV's driver).
Or maybe Tridam would be kind enough to provide the 3DM05 scores both with and without P95 running? Maybe even his educated speculation, if he'd be so kind.
Or maybe I'm not reading 3DM05's vertex setup prediliction correctly. The way I see it, if NV offloads that to a multicore CPU without taking into account the CPU's load, then P95 hogging one or both cores may compromise any vertex work NV's drivers send to the CPU, therefore leaving the rest of the GPU (the fragment shaders [and I guess ROPs, tho I'm not sure how power hungry they are]) hanging, thus leading to the reduced power draw.
Your runaway theories are sometimes the spice of life here PeteThat would be a strike against my vertex theory, Chris.
It's currently a boring time for the hardware industry, trapped in that we're-all-just-waiting-for-Vista no man's land.Might be just me, but after just watching the presentation from start to finish, I found this year's keynote to be *slightly* less rapidly technically linguistic than his previous outings. You should give it a try .
John Carmack said:We had problems with driver changes breaking things, and we never expended the effort to make all the various warnings and debug tools work in SMP mode. I wouldn't doubt that there are various options that are fully supported by the menu system that could cause a code path that isn't SMP safe to be executed, leading to a random, hard to trace crash.Reverend said:1) SMP support in Doom3
You said that SMP support for the game/engine isn't rock solid and would lead to undesirable gaming experience issues. Can you tell me what exactly was the problem? And what did you mean by (examples appreciated) the problems in gaming experiences?
There are other bits from John but they're not that interesting to me. Let me know if you guys have any questions (re his keynote) and I'll pass them on. Just make sure they're interesting enoughJohn Carmack said:A fully programmable CPU system with equal performance would obviously be better, but it isn't completely clear that is going to be possible. The vertex / fragment paradigm is probably the most successful multiprocessing architecture ever. Architectures with large numbers of general purpose processors have historically delivered very disappointing performance on most problems, and a LOT of research has been done. Of course, CPU systems clock a lot higher, so that may be enough to overcome the lack of dedicated control logic.Reverend said:3) GPU vs CPU
Tim "Mr CPU" Sweeney has on numerous occasions complained to me about the extra work that needs to be done when it comes to taking advantage of GPUs and that Microsoft OSs (and therefore its API) inherently have (and simply can't avoid due to its evolutionary status) useless overheads. We've known for some time now that Tim wishes for CPU/software-based rendering to make a big return but reading your keynote suggests that you appear to have the opposite view, that you *seem* to wish _something_ can be done where much of the rendering process will fall squarely on the shoulders of the GPU.
The jury is still out on this, I could see it going either way in the mid-term. In the long term, a general system will be able to do things "fast enough" that specialized hardware, even if more efficient per gate or per dollar, won't be justifiable in most systems.
I have an architecture that I would like to implement on a high performance CPU based system that could be dramatically better than the existing vertex / fragment based systems, but it is all speculative enough that I wouldn't encourage a vendor to pursue that route if they couldn't also be competitive while emulating conventional rendering solutions.
John Carmack