Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • mesa mesa
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2,688
    • Issues 2,688
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 904
    • Merge requests 904
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Mesa
  • mesamesa
  • Merge requests
  • !2662

ANV: CPU overhead reductions

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Jason Ekstrand requested to merge jekstrand/mesa:review/anv-cpu-overhead into master Nov 08, 2019
  • Overview 19
  • Commits 15
  • Pipelines 6
  • Changes 22

This series contains a variety of commits all with the objective of reducing CPU overhead. Looking at perf traces of some rapid bind-and-draw benchmarks, emitting binding tables and push constants is the hottest of hot-paths. It's a bit of a long and winding path but the final patch is the kingpin. With that we can avoid re-emitting binding tables and push constants in several cases when there is a pipeline change that doesn't change everything. For instance, if someone binds a pipeline with the same shaders but different depth/stencil settings, we can now detect that nothing has changed in the bind map or push constant setup and just go ahead with the pipeline.

Edited Nov 13, 2019 by Jason Ekstrand
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: review/anv-cpu-overhead