Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • mutter mutter
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1,151
    • Issues 1,151
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 120
    • Merge requests 120
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOMEGNOME
  • muttermutter
  • Merge requests
  • !197

Sysprof

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Georges Basile Stavracas Neto requested to merge gbsneto/tracing into master Aug 11, 2018
  • Overview 55
  • Commits 9
  • Pipelines 42
  • Changes 15

Description

This is a continuation of Jonas Ådahl's Sysprof capturing work on Cogl that happened during the Performance Hackfest 2018. It allows capturing data about frame times and saving it into a syscap file, that is parsed by Sysprof to give a nice visualization of frame times.

Here's a screenshot of what to expect from this work:

sysprof3 mutter

The call stack is empty due to no proper Sysprof integration yet - nothing from it is being recorded beyong the frame times, which is what can be seen in the picture.

Justification

In order to correctly identify performance bottlenecks in the rendering routines, it is fundamental to have precise and reliable data. Without it, it's much harder to understand what's happening and make correct decisions - essentially, educated guess at most.

With Sysprof integration showing both frame times and CPU consumption, it will be possible to address this issue.

Details

A new D-Bus interface is introduced. It is the first, embryonic tentative of what will be a generic Sysprof D-Bus interface that will be implemented by applications that integrate with Sysprof 3.

To Do

  • Validate the proposed org.gnome.Sysprof.Capturer interface
  • Check if the pipe-based code actually works (requires Sysprof, or similar tool, to run)
  • Adapt code style if necessary
  • Work on Sysprof side

Fixes #614 (closed)

Edited May 30, 2019 by Georges Basile Stavracas Neto
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: gbsneto/tracing