Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Profiling infrastructure #136

Merged
merged 3 commits into from
Mar 27, 2018
Merged

Conversation

robertodr
Copy link
Member

@robertodr robertodr commented Mar 5, 2018

This PR provides documentation and infrastructure for profiling the library. Of the tools I have explored, only gperftools needed some CMake infrastructure. I haven't considered gprof: according to the Internet it's basically deprecated in favor of perf.

The set of input files for benchmarking should definitely be expanded to stress-test different parts of the code.

Todos

  • Developer Interest
  • Document CPU profiling using perf.
  • Document CPU profiling with Google perf tools.
  • Document heap profiling with Google perf tools.
  • Document profiling using VTune.
  • Provide a set of input files for benchmarking.

Types of changes

  • New feature (non-breaking change which adds functionality)

Status

  • Ready to go

@MinazoBot
Copy link

MinazoBot commented Mar 5, 2018

1 Warning
⚠️ Please update CHANGELOG.md with a description of your changes. If this PR is not a user-facing change (e.g. just refactoring), you can disregard this.

Here's an example of a CHANGELOG.md entry:

* [#136](https://github.com/PCMSolver/pcmsolver/pull/136): Profiling infrastructure - [@robertodr](https://github.com/robertodr)

Generated by 🚫 Danger

@codecov
Copy link

codecov bot commented Mar 5, 2018

Codecov Report

Merging #136 into release/1.2.Z will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@              Coverage Diff               @@
##           release/1.2.Z     #136   +/-   ##
==============================================
  Coverage          69.81%   69.81%           
==============================================
  Files                 92       92           
  Lines               5625     5625           
==============================================
  Hits                3927     3927           
  Misses              1698     1698

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d5d775f...4760072. Read the comment docs.

@robertodr robertodr requested review from ilfreddy and bast March 27, 2018 02:30
@robertodr robertodr changed the title [WIP] Profiling infrastructure Profiling infrastructure Mar 27, 2018
Copy link
Member

@bast bast left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks very good. I started using perf after you have recommended and it is indeed a nice tool. The doc here is great.

@robertodr
Copy link
Member Author

Thanks! I'll rebase and then you can push the button.

@robertodr robertodr merged commit d840bc5 into PCMSolver:release/1.2.Z Mar 27, 2018
@robertodr robertodr deleted the profiling branch March 27, 2018 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants