On TechReport's frame latency measurement and why gamers should care

Discussion in '3D Hardware, Software & Output Devices' started by Andrew Lauritzen, Jan 1, 2013.

  1. lanek

    Veteran

    Joined:
    Mar 7, 2012
    Messages:
    2,469
    Likes Received:
    315
    Location:
    Switzerland
    Same problem on early time of BF2 ( before a patch or driver was released reduced it... but on other extend, BC2 and BF3 have show similar things ( and have been quickly fixed ) .. Its because their home engine use this method since the start.

    Its another problem on FC3, related mainly to the engine / driver and specially it touch any brand.. In this case it is really " stutter " and not microstutter ( even if latency frametimes, dont forcibly put microstutters visible )
     
    #41 lanek, Jan 3, 2013
    Last edited by a moderator: Jan 3, 2013
  2. Gipsel

    Veteran

    Joined:
    Jan 4, 2010
    Messages:
    1,620
    Likes Received:
    264
    Location:
    Hamburg, Germany
    I always thought this is NOT was Fraps is actually doing. AFAIR it just measures the time difference between subsequent Present() calls. So it does not measure frame latency, but just inverted throughput on a single frame granularity.
     
  3. Novum

    Regular

    Joined:
    Jun 28, 2006
    Messages:
    335
    Likes Received:
    8
    Location:
    Germany
    Still the same with every CryEngine game.
     
  4. sonen

    Newcomer

    Joined:
    Jul 13, 2012
    Messages:
    53
    Likes Received:
    33
    Props to Mr. Dave Baumann for being open about the issue, as it's rare these days.

    Hope he doesn't catch any heat from above because of it.
     
  5. Andrew Lauritzen

    Moderator Veteran

    Joined:
    May 21, 2004
    Messages:
    2,526
    Likes Received:
    454
    Location:
    British Columbia, Canada
    The latter - I meant it in terms of it "eats an entire thread" and runs active code on it a large amount of the time. Just try pinning a game to thread 0 on an NVIDIA machine sometime and see what happens to your performance in D3D, even for a single-threaded game :)

    Interesting point; perhaps that is indeed part of the reason.

    True, but I feel like most of this already done - at runtime - in drivers anyways, so it already has to be "fairly" optimized. Certainly there'd be issues where spinning up a slow disk isn't worthwhile, but moving forward people should mostly have SSDs... I dunno, food for thought :)

    I agree a lot of stuff can. Take a look at TechReport's results for Battlefield 3 for instance... nice smooth frames on almost all implementations. That's no accident... repi knows his stuff :) But still, like I said, some of it is guesswork depending on your level of relationship with the major ISVs. Certainly people are usually willing to tell you - under NDA - for instance which state you should avoid changing at runtime/precache, but it's not exactly constant, even for a single vendor, so it's a bit brittle.

    Indeed FRAPS does measure the delta time between Present calls. My point was that number is basically the same as measuring the delta time elsewhere in the game loop. It might be a frame or so "different", but you'll see the same patterns and spikes. (That is, assuming the game isn't doing some sort of smoothing/filtering on the raw time deltas, but as I mentioned, I know of no games that currently do that.)

    Agreed. I felt a bit sorry for him after reading some of the TR comments, but thanks for responding and clarifying in any case.

    And again, sorry for any implication that my post here had anything to do with antagonizing AMD or anyone else... it was meant to be an industry-wide call to action and Scott's recent data was simply a convenient example.
     
  6. pcchen

    pcchen Moderator
    Moderator Veteran Subscriber

    Joined:
    Feb 6, 2002
    Messages:
    2,743
    Likes Received:
    106
    Location:
    Taiwan
    Caching to disk is probably going to be even slower than a recompile (if you use a HDD). Caching in RAM may have memory usage issues. Reverse engineering is probably not a big issue, and you can always encrypt your cached data.
     
  7. Dave Baumann

    Dave Baumann Gamerscore Wh...
    Moderator Legend

    Joined:
    Jan 29, 2002
    Messages:
    14,079
    Likes Received:
    648
    Location:
    O Canada!
    Ehh, don't mind me. I've been around the internets long enough.

    While I like the scientific application of the analysis some work does need to be done to understand the thresholds. While I cannot deny there are spikes (the driver team have spent a lot of time analyzing where they are coming from and smoothing them out!), I can't say that in the games I've played they have been noticeable, likewise I do not see end user feedback for this type of issue (except, maybe outside of a few known problem titles).
     
  8. almighty

    Banned

    Joined:
    Dec 17, 2006
    Messages:
    2,469
    Likes Received:
    5
    I dread to think the latency I'm getting with Quad 7970's but I don't really notice anything.....
     
  9. Gambler FEX online

    Newcomer

    Joined:
    Jul 28, 2002
    Messages:
    11
    Likes Received:
    0
    Isn't this called a paradigm change? Instead of 60fps (or 120fps for gamers with a 120hz monitor), I'd love to see the individual frametimes very close to 16.33ms, or 8,33ms for 120hz. Does Nvidias adaptive v-sync help, or complicate this issue?
     
  10. Alexko

    Veteran Subscriber

    Joined:
    Aug 31, 2009
    Messages:
    4,490
    Likes Received:
    908
    Do you expect the optimisation of whatever causes these spikes to translate into a measurable increase in frame rate as well?
     
  11. Gambler FEX online

    Newcomer

    Joined:
    Jul 28, 2002
    Messages:
    11
    Likes Received:
    0
    You may be used to it, have too slow pixel response time to notice, playing the wrong games or simply unable to see it. FPS is ver subjective. For instance 120hz vs 60hz:

    http://www.youtube.com/watch?v=yWEpIwNDeCA
    some can't
    http://www.youtube.com/watch?v=a2IF9ZPwgDM
    some can

    Would a 120hz monitor improve or reduce microstutter?
     
  12. Silent_Buddha

    Legend

    Joined:
    Mar 13, 2007
    Messages:
    16,042
    Likes Received:
    4,993
    I don't think of it as a paradigm change at least with regards to your non-enthusiast. While it's possible your average "core" PC gamer knows the difference between 20-30-60 FPS in a game and even a non-"core" PC gamer would feel the difference between say 20 FPS and 60 FPS, the same can't necessarily be said for variable frame times unless they are so pronounced that they actually produce noticeable spikes in performance.

    Some people can evidently notice them, or at least think they can. Most people would never notice.

    Now that said, I don't think it's a bad way of looking at things, as long as the reviewer takes the time to analyze frame time graphs for the entire game to make sure that the section they choose to represent in a review is representative of the game in general. As has been pointed out before, the frame time's can vary quite significantly depending on where in the game you are and which vendor's hardware you are running.

    I'm all for pointing out bad cases and having them addressed as they can potentially affect a user's experience. On the other hand if it isn't thorough then the risk is that a reviewer accidentally or deliberately can cover up problems of one hardware vendor which would then prevent issues with that hardware vendor's card from ever being addressed.

    In other words, it's a good tool, but it's not terribly useful unless you are much more thorough with testing than sites have had to be in the past with FPS graphs. Since FPS graphs (from an IHV point of view) aren't nearly as variable from point to point in a game as are frame time graphs.

    Regards,
    SB
     
  13. Gambler FEX online

    Newcomer

    Joined:
    Jul 28, 2002
    Messages:
    11
    Likes Received:
    0
    You mean fps graphs like those at HardOCP? I think the do a great job teaching the enthusiast that FPS is not all that matters, but how much a game dips below 60 or 120fps. Isn't there occlusion logic on GPUs that doesn't render anything that is behind a tree or other objects in front of the view? But sech FPS graphs average, and won't expose microstutter as a frametime graph does.

    I think this issue applies to the Desktop as well
    http://www.youtube.com/watch?v=ScFAvPN7aJM
    http://www.youtube.com/watch?v=ToFgYylqP_U
    http://www.youtube.com/watch?v=7EBASZ5lldE
     
  14. XTF

    XTF
    Newcomer

    Joined:
    Jan 3, 2013
    Messages:
    27
    Likes Received:
    0
    If Fraps is measuring the interval between Present calls, isn't it measuring the wrong thing? I assume there might be significant time between the Present call from the game, the frame finishing being rendered and the frame being send to the monitor.

    I asked the Fraps author if the longest frametime could be displayed instead of the average but unfortunately he refused.
     
  15. BRiT

    BRiT (╯°□°)╯
    Moderator Legend Alpha Subscriber

    Joined:
    Feb 7, 2002
    Messages:
    12,375
    Likes Received:
    8,594
    Location:
    Cleveland
    Already answered by Andrew:

     
  16. caveman-jim

    Regular

    Joined:
    Sep 19, 2005
    Messages:
    305
    Likes Received:
    0
    Location:
    Austin, TX
    Do you mean decreased delta between 99% and 99.9% times?
     
  17. caveman-jim

    Regular

    Joined:
    Sep 19, 2005
    Messages:
    305
    Likes Received:
    0
    Location:
    Austin, TX
  18. XTF

    XTF
    Newcomer

    Joined:
    Jan 3, 2013
    Messages:
    27
    Likes Received:
    0
    I'm not sure Andrew is right here. Given the buffering, things happening after Present() may go unnoticed.
    It also means you're not measuring latency but intervals.

    From a latency perspective, buffering (more than one frame) here doesn't sound good.

    BTW, is the no edit command here?
     
  19. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    14,847
    Likes Received:
    2,264
    the nv control panel has (or did last time i used it) an option to select how many frames are buffered (default 3)
     
  20. Albuquerque

    Albuquerque Red-headed step child
    Veteran

    Joined:
    Jun 17, 2004
    Messages:
    3,845
    Likes Received:
    329
    Location:
    35.1415,-90.056
    You gain the EDIT ability after a certain number of posts. Don't try to spam, or you get the banhammer instead ;)
     
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...