Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • M mutter
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,007
    • Issues 1,007
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 132
    • Merge requests 132
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOME
  • mutter
  • Merge requests
  • !1726

Merged
Created Feb 11, 2021 by Daniel van Vugt@vanvugtContributor

clutter/frame-clock: Evenly space updates when presentation times are zero

  • Overview 20
  • Commits 1
  • Pipelines 10
  • Changes 1

This is for the Nvidia-X11 driver where last_presentation_time_us is always zero. Other drivers should be unaffected.

The existing calculate_next_update_time_us algorithm only provides a guarantee of not scheduling faster than the refresh rate in the presence of a valid last_presentation_time_us. When last_presentation_time_us is zero there is no solid foundation to guarantee we're not occasionally scheduling too early. So introduce one now.

By introducing a hard guarantee that updates are never scheduled faster than the refresh rate, we avoid keeping Nvidia's triple (or quad?) buffer queue full. So this avoids the high latency and random stalls experienced on Nvidia.

Closes: #818 (closed), #1273 (closed), #1287 (closed), #1291 (closed), #1583 (closed)

Edited Feb 11, 2021 by Daniel van Vugt
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: throttle-nvidia