compile-time-perf
omnitrace
compile-time-perf | omnitrace | |
---|---|---|
3 | 3 | |
73 | 261 | |
- | 3.8% | |
0.0 | 7.3 | |
almost 3 years ago | 10 days ago | |
CMake | C++ | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
compile-time-perf
- jrmadsen/compile-time-perf -- High-level compilation overhead metrics
-
Make LLVM fast again
Looks like you've got your own setup with perf, time, etc. but might find this useful: https://github.com/jrmadsen/compile-time-perf
omnitrace
-
What is your favourite profiling tool for C++?
Omnitrace. Similar concept to VTune and Nsight Systems from AMD: profiling and/or tracing for CPU-only or CPU+GPU workloads: sampling, binary instrumentation, etc. Has more CPU-based information than Nsight Systems and supports binary rewrites for instrumentation which VTune lacks (runtime instrumentation only). Also supports causal profiling like COZ. Supports Python-based analysis/manipulation/filtering/comparison of traces and profiles. Other great tools: HPCToolkit, Caliper, and TAU.
-
Omnitrace: New Performance Analysis Tool for CPUs and GPUs by AMD Research
I think I actually saw the GitHub issue you filed with Dyninst. I noticed you were using Ubuntu 22.04 which I've encountered issues with myself. If you file a bug report on GitHub with some info about the segfault, I'll see what I can do to track it down.
What are some alternatives?
timemory - Modular C++ Toolkit for Performance Analysis and Logging. Profiling API and Tools for C, C++, CUDA, Fortran, and Python. The C++ template API is essentially a framework to creating tools: it is designed to provide a unifying interface for recording various performance measurements alongside data logging and interfaces to other tools.
heaptrack - A heap memory profiler for Linux
ninja2wctr - Calculates Wall Clock Time Responsibility for each output from .ninja_log
externis - Generate profiling traces for GCC
scouter - Scouter is an open source APM (Application Performance Management) tool.
pcm - Intel® Performance Counter Monitor (Intel® PCM)
StaticTypeInfo - 🏀 Up your type-game. A small C++ library for compile-time type names and type indices.
optick - C++ Profiler For Games
lighthouse - Automated auditing, performance metrics, and best practices for the web.
pcm - Processor Counter Monitor [Moved to: https://github.com/intel/pcm]