Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rust-lang/measureme
Support crate for rustc's self-profiling feature
https://github.com/rust-lang/measureme
Last synced: about 16 hours ago
JSON representation
Support crate for rustc's self-profiling feature
- Host: GitHub
- URL: https://github.com/rust-lang/measureme
- Owner: rust-lang
- License: apache-2.0
- Created: 2019-03-12T14:43:54.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-05-31T12:28:01.000Z (4 months ago)
- Last Synced: 2024-07-19T03:04:31.783Z (2 months ago)
- Language: Rust
- Size: 1.73 MB
- Stars: 331
- Watchers: 19
- Forks: 48
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE-APACHE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# measureme [![Rust](https://github.com/rust-lang/measureme/actions/workflows/rust.yml/badge.svg)](https://github.com/rust-lang/measureme/actions/workflows/rust.yml)
Support crate for rustc's self-profiling featureThis crate is maintained by the Rust compiler team and in particular by the
[self-profile working group][wg-self-profile]. It is currently only meant to
be used within rustc itself, so APIs may change at any moment.## Tools
### measureme
`measureme` is the core library which contains a fast, efficient framework for recording events and serializing them to a compact binary format. It is integrated into `rustc` via the unstable `-Z self-profile` flag.
[Documentation](https://docs.rs/measureme)
### summarize
`summarize` produces a human readable summary of `measureme` profiling data.
It contains two main modes:- `summarize` which groups the profiling events and orders the results by time taken.
- `diff` which compares two profiles and outputs a summary of the differences.[Learn more](./summarize/README.md)
### stack_collapse
`stack_collapse` reads `measureme` profiling data and outputs folded stack traces compatible with the [Flame Graph](https://github.com/brendangregg/FlameGraph) tools.
[Learn more](./stack_collapse/README.md)
### flamegraph
`flamegraph` reads `measureme` profiling data and outputs [Flame Graph](https://github.com/brendangregg/FlameGraph).
[Learn more](./flamegraph/README.md)
### crox
`crox` turns `measureme` profiling data into files that can be visualized by the Chromium performance tools.
[Learn more](./crox/README.md)
[wg-self-profile]: https://rust-lang.github.io/compiler-team/working-groups/self-profile/
### mmedit
`mmedit` is for editing `.mm_profdata` files generated by `measureme`.
[Learn more](./mmedit/README.md)
### mmview
`mmview` is for printing the event data generated by `measureme`.
[Learn more](./mmview/README.md)
### analyzeme
`analyzeme` is a library with common functionality for measureme tools.
[Learn more](./analyzeme/README.md)
### decodeme
`decodeme` holds the decoding definitions of the profiling event data from `measureme`.
[Learn more](./decodeme/README.md)