1. 12 Jun, 2009 2 commits
  2. 11 Jun, 2009 8 commits
  3. 09 Jun, 2009 11 commits
  4. 05 Jun, 2009 18 commits
  5. 04 Jun, 2009 1 commit
    • Eric Anholt's avatar
      drm/i915: Change GEM throttling to be 20ms like the comment says. · b962442e
      Eric Anholt authored
      keithp didn't like the original 20ms plan because a cooperative client could
      be starved by an uncooperative client.  There may even have been problems
      with cooperative clients versus cooperative clients.  So keithp changed
      throttle to just wait for the second to last seqno emitted by that client.
      It worked well, until we started getting more round-trips to the server
      due to DRI2 -- the server throttles in BlockHandler, and so if you did more
      than one round trip after finishing your frame, you'd end up unintentionally
      syncing to the swap.
      
      Fix this by keeping track of the client's requests, so the client can wait
      when it has an outstanding request over 20ms old.  This should have
      non-starving behavior, good behavior in the presence of restarts, and less
      waiting.  Improves high-settings openarena performance on my GM45 by 50%.
      Signed-off-by: default avatarEric Anholt <eric@anholt.net>
      Reviewed-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
      b962442e