The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.

    PC Gaming, Devs Blame MS and AMD and NV?

    Discussion in 'Gaming (Software and Graphics Cards)' started by Zymphad, Nov 18, 2011.

  1. Zymphad

    Zymphad Zymphad

    Reputations:
    2,321
    Messages:
    4,165
    Likes Received:
    355
    Trophy Points:
    151
    IMPORTANT READ FIRST: This article deals with multi-threading and draw calls. Simple terms, a draw call is a calculation of what a GPU should do. On PC it's limited to single thread in DX9, but on Consoles, both 360/PS3 are not. Consoles can do up to 50,000 draw calls, but they usually don't. The current issue with PC Gaming isn't the GPU. The GPU from AMD and Nvidia are widly much better than on console, the problem is the CPU. The difference between an i7 and the 3 core in 360 isn't that different other than the high mhz on PC. But on PC the draw calls are single threaded and for PC, due to the DX API and all the other layers in MS Windows, a PC has to do many more cycles for rendering the same thing on PC. That's the bulk of what this article discusses. DX11 supposed to resolve some of this, but AMD for example still doesn't support multi-threading in their drivers, and this is probably the biggest feature of DX11 that game developers want, and NV support is also shabby.

    Interesting read. This is an old interview from an ex-CodeMasters employee explaining why PC Gaming has the issues that it has. The developer says game developers blame MS for the hig overhead from the DX API and MS for causing a single threaded draw call. A console can make many more draw calls than a PC can. And then goes on to blame AMD and NV for drivers issues. Developing for PC is not fun, pain, and frustrating.

    The interview states that PC only have an advantage because of the high mhz advantage. But speed for speed between a PC and Console, a Console will destroy a PC. The next gen of consoles coming should leave the PC in the dust unless Microsoft can figure out a way to get rid of all the layers in the way. When next gen consoles come out and MS still hasn't resolved this problem of API overhead and proper multi-threading support from AMD and Nvidia, then it might be time to ditch the PC and just buy the new console.

    One question PC Gamers will have to ask is, does MS care about PC gaming? Will they do anything to fix these issues or just turn a blind eye in hopes this will increase their Xbox sales? Or will PC Gaming turn to a different system like possibly shift to Linux or just a Shell dedicated to gaming?

     
  2. Zymphad

    Zymphad Zymphad

    Reputations:
    2,321
    Messages:
    4,165
    Likes Received:
    355
    Trophy Points:
    151
    Notice that it seems AMD may be the GPU supplier for both Sony and Microsoft on the next gen of consoles. Makes you wonder why AMD has been ignoring the lack of multi-threading support in their drivers after almost 2 years DX11 has been used in games and with multiple games supportingin DX11 Multi-threading.

    And I thought consoles were further out, but seems, dev kits for next gen consoles may be in the hands of developers in just a year from now?
     
  3. Lum-X

    Lum-X Notebook Evangelist

    Reputations:
    27
    Messages:
    665
    Likes Received:
    10
    Trophy Points:
    31
    what about OpenGL.

    I just cant understand why they do this. the more they do the more they will loose PC market i belive, i wont buy a game that runs like crap not mater what PC i have. the graphics instead of getting better they seem to get worse.

    I still strongly believe that is is a part of the war between vendors MS and OpenGL. I might be wrong but to me it seems like that lets screw someone up.

    OO yes and drivers are hell especially on linux. as for overheads the more features DX and openGL will get the more overhead it looks that we will have.
     
  4. Zymphad

    Zymphad Zymphad

    Reputations:
    2,321
    Messages:
    4,165
    Likes Received:
    355
    Trophy Points:
    151
    John Carmack who uses OpenGL has this to say about it. It's an API with overhead issues. The PC version running Rage has endless issues and performs much worse than it does on console in comparison considering the difference in hardware performance.

    John Carmack is probably one of the many who want direct command line access to hardware on PC. But considering on PC, there are just countless different CPU/GPU variations, how he would do that is not known. That's why we have a DX/OpenGL API. With 360 and PS3 you can go direct to metal because there is no variation in hardware.

     
  5. Peter Bazooka

    Peter Bazooka Notebook Evangelist

    Reputations:
    109
    Messages:
    642
    Likes Received:
    1
    Trophy Points:
    31
    This exact thing came up earlier this year and I believe there was at least one thread here that people commented on but with the search here not sure if I can find it. Here is a link to what I think is the original article.

    Farewell to DirectX? | bit-tech.net

    Here is a great quote that says in different words the same thing you posted.

    Quote: On consoles, you can draw maybe 10,000 or 20,000 chunks of geometry in a frame, and you can do that at 30-60fps. On a PC, you can't typically draw more than 2-3,000 without getting into trouble with performance, and that's quite surprising - the PC can actually show you only a tenth of the performance if you need a separate batch for each draw call.
     
  6. Lum-X

    Lum-X Notebook Evangelist

    Reputations:
    27
    Messages:
    665
    Likes Received:
    10
    Trophy Points:
    31
    John Carmack is someone special, he spoke a lot at QuakCon and i strongly belive that this issue wont be solved until we as marked make something. thy will still keep on doing the same draging us and then we will complain why this why that.

    anyway DX with MS is doing hell a lot to us off. why not give a try to OpenGl as API. see what will M$$$$ do to improve they're api.

    Unless there is no war i mena a big one there wont be improvements.

    i belive that DX might have the same fate as Adobe Flash will, soon we will se something like HTML5 and things will start changing. developing has become a very very hard job, once you start a career on something its very hard to change it because you have to learn a lot and get experienced on that and no one wants that.
     
  7. Lum-X

    Lum-X Notebook Evangelist

    Reputations:
    27
    Messages:
    665
    Likes Received:
    10
    Trophy Points:
    31
  8. Zymphad

    Zymphad Zymphad

    Reputations:
    2,321
    Messages:
    4,165
    Likes Received:
    355
    Trophy Points:
    151
    Yeah too bad Sweeney was so wrong. All my games are GPU heavy and very CPU light.

    And the problem that all the other game programmers have pointed out was that the CPU is the bottleneck issue, not the GPU.
     
  9. hockeymass

    hockeymass that one guy

    Reputations:
    1,450
    Messages:
    3,669
    Likes Received:
    85
    Trophy Points:
    116
    The author really does a terrible job of explaining Sweeney's point and the headline makes no sense. What Sweeney is actually saying is that GPUs will eventually subsume CPU functions and eventually all processing functions will be handled by what is essentially a GPU (even though it will make no sense to call it that) and the need for graphical APIs will be gone.
     
  10. Lum-X

    Lum-X Notebook Evangelist

    Reputations:
    27
    Messages:
    665
    Likes Received:
    10
    Trophy Points:
    31
    well if the api is gone there will be no more problems :D
     
  11. fzhfzh

    fzhfzh Notebook Deity

    Reputations:
    289
    Messages:
    1,588
    Likes Received:
    0
    Trophy Points:
    55
    Well, this is basically the crust of the problem:

    "I have a belief that the draw call limit if it becomes an issue it will be solved and the fact that it has not been addressed is because it has not been an issue yet. The market will sort it out. I really doubt any of the players involved are just going to flip over their desks on go home calling it the end of the PC performance increases.

    Well, yes, hopefully it will be addressed BUT these things take time to sort out both on the windows side and the driver side of things."

    It's simply because it's not an issue for PC as the PC's CPU is so much more powerful, and how most processing are done on the GPU with shaders rather on the CPU.

    It seems that it's partly his problem for trying to use console development method on PC. He should understand that PC is a lot more GPU based hence shader heavy approach would give a lot better performance, which is different from console. I guess his real issue is that he can't just port the console version of the game to the PC directly if he want best performance.
     
  12. Zymphad

    Zymphad Zymphad

    Reputations:
    2,321
    Messages:
    4,165
    Likes Received:
    355
    Trophy Points:
    151
    You don't understand the problem it seems. Without this, the GPU is crippled. It's the draw calls that tells the GPU what to do. In fact most games on the PS3 are using the SPs to make even more draw calls on the Nvidia GPU it has. That means it's all being done single threaded. So even if BF3 has multi-threaded support on CPU for sound, or whatever it's being done on, the draw calls to render from GPU is still single threaded. Well for Nvidia, maybe not since they support DX11 MT'ing. But AMD does not.

    The other issue is the huge layers and API that PC has. I think you missed the point of the article. But other thing, you are probably right. He's only a game programmer who has to ensure PC games run on PC hardware for a living. He's the one making sure the GPU shaders are working properly for his games, he's totally wrong.

    You should write a letter to John Carmack and Tim Sweeney and game developers at Firaxis Games and you should tell AMD they are all wrong and are morons. They don't know what they are talking about. And yes I put in AMD, even AMD admits it's the DX11 API, overhead and lack of multi-threading support that is crippling PC Game development. Why they aren't getting the MT support out faster is beyond me. There is an interview from AMD that goes into depth of why on PC draw calls is so limited and the draw calls is what ensures something appears on your screen!
     
  13. Zymphad

    Zymphad Zymphad

    Reputations:
    2,321
    Messages:
    4,165
    Likes Received:
    355
    Trophy Points:
    151
    From AMD, CPU is holding back GPU from lack of mult-threading support. Of course AMD is at fault for not providing it in the drivers.

     
  14. R3d

    R3d Notebook Virtuoso

    Reputations:
    1,515
    Messages:
    2,382
    Likes Received:
    60
    Trophy Points:
    66
    Do you have a source?
     
  15. fzhfzh

    fzhfzh Notebook Deity

    Reputations:
    289
    Messages:
    1,588
    Likes Received:
    0
    Trophy Points:
    55
    I am in the game development industry as well and you misunderstood what I am talking about. I know what is draw call, and I am not saying that they are wrong, in fact I was saying that he is right - in that no one cares because it's not a problem right now. The lack of MT support for draw call is basically crippling the CPU. However, the problem is that: this is not really a problem right now because speed of CPU nowadays is more than enough to handle everything.

    The writer expressed that he understands this as well, he is simply being worried that it might not be solved in time when it actually becomes a problem as GPU get faster. However, right now, it's not really a problem since the bottle neck is really with the GPU.
     
  16. funky monk

    funky monk Notebook Deity

    Reputations:
    233
    Messages:
    1,485
    Likes Received:
    1
    Trophy Points:
    55
    I'm of the impression that MS won't simply ignore this and that they might actually be working on a fix for it in DX12 beta stuff.

    People have been saying that MS might just give up and concentrate on Xbox development instead. I don't think this is the case. If you eliminate the PC gamers then they will naturally either buy a playstation or an Xbox. Gamers buying playstations is the exact oposite of what microsoft wants, so it makes sense to keep PC gamers happy and reduce the possibility of it happening.

    MS probably make just as much money for every PC built as they do for every XBox sold. Think about it. Windows is pure profit for them. As soon as they have a final release they're just sitting there laughing while the cash flows in. It costs them a grand total of a few pence to make a windows distrubution. Compare that with a console where they have to pay for the hardware and I'm sure the profit margin on windows distributions would be higher.

    Also, if you really wanted me to, I'm sure I could slip a word to MS research. I live in Cambridge and my sixth form college has good connections with them. We recently had a guy come in and talk about the research they did with the kinect. If something like that happened again then I could probably hand on the message, which I hope would filter down to the relevant unit eventually.