Home Technical Talk

GPU frame/ms budget discussion from post-mortems

polycounter lvl 6
Offline / Send Message
godejon polycounter lvl 6

I read a paper on Far Cry 5's terrain system which mentioned that their budget for the terrain was 2ms. Does anyone know of any other discussions or breakdowns of GPU ms budgets on shipped projects? How much time for example Borderlands 3 spends drawing terrain, skybox, animated characters, effects, that sort of thing?

Hard to google because you get a lot of budget graphics card discussion.

Thanks!

Replies

  • poopipe
    Offline / Send Message
    poopipe grand marshal polycounter
    What do you hope to learn from it? 
    I ask because this is much like asking for polycounts or texture sizes in the sense that it tells you very little of practical use without a whole shit load of context to go with it. 

    The problems with just having a number like 2ms are multiple
    1 : GPUs work in a massively parallel fashion  i.e. they do thousands of things at once. Engine/Render programmers take advantage of this parallelism in cunning ways such as hiding calculations behind slow operations (eg, loading texture data.) and as a result an operation that takes 2ms doesn't necessarily delay everything else by 2ms.  The total time taken can be (and commonly is) masked by clever scheduling of tasks within the render pipeline
    2 : Without knowing how much of the screen it covers at the time of capture it's a meaningless number - if it's 2ms and it covers the whole screen  you hit 500 fps - if it takes up 8x8 pixels at 4k you need to adjust some priorities.
    3: You don't know what the CPU is doing... The GPU can't do anything without being fed so if your CPU needs 10ms to deal with it's shit and submit everything to the GPU that leaves you with 20ms of GPU time if you want to hit 30fps*  2ms is 10% of that time 

    *(its not that simple in practice). 


    it's worth poking the gpu profiler in unreal if you want to get an understanding of how this sort of thing works - I'd urge any artist to do this since it'd make my job a lot easier if everyone did :tongue:
  • godejon
    Offline / Send Message
    godejon polycounter lvl 6
    it's worth poking the gpu profiler in unreal if you want to get an understanding of how this sort of thing works - I'd urge any artist to do this since it'd make my job a lot easier if everyone did :tongue:
    Using UE's GPU profiler is what led me to this question actually.
    What do you hope to learn from it?
    I'm at the beginning of a project right now and don't want to repeat mistakes made on the last project. I thought I'd make a rough "average frame" or worst case scenario budget that we could use to guide optimization through the project. Looking at other titles, and estimating the similarity (how many characters on screen during an action sequence, etc) could provide some guidance for making this budget.

    Right now I'm trying to determine if my landscape shader has become too complex and needs to be simplified, so I can either wait until the project is further along to check how much room I have in an average frame, or I could look at other projects similar to this one to help estimate. But I see your point that it would have to be very similar (another UE4 project with similar scene composition and gameplay) to be of any use.
Sign In or Register to comment.