-
Notifications
You must be signed in to change notification settings - Fork 77
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
Improve timing, add Trace Event Format output #844
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
sim642
added
feature
bug
performance
Analysis time, memory usage
debugging
Abstract debugging
labels
Oct 3, 2022
Co-authored-by: Michael Schwarz <michael.schwarz93@gmail.com>
michael-schwarz
approved these changes
Oct 7, 2022
sim642
added a commit
to goblint/bench
that referenced
this pull request
Oct 7, 2022
jerhard
pushed a commit
to goblint/bench
that referenced
this pull request
Nov 23, 2022
sim642
added a commit
to sim642/opam-repository
that referenced
this pull request
Nov 25, 2022
CHANGES: Functionally equivalent to Goblint in SV-COMP 2023. * Add automatic configuration tuning (goblint/analyzer#772). * Add many library function specifications (goblint/analyzer#865, goblint/analyzer#868, goblint/analyzer#878, goblint/analyzer#884, goblint/analyzer#886). * Reorganize library stubs (goblint/analyzer#814, goblint/analyzer#845). * Add Trace Event Format output to timing (goblint/analyzer#844). * Optimize domains for address and path sets (goblint/analyzer#803, goblint/analyzer#809).
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
bug
debugging
Abstract debugging
feature
hacktoberfest-accepted
https://hacktoberfest.digitalocean.com/
performance
Analysis time, memory usage
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes
Stats
into Goblint asTiming
and clean it up. Although as-is CIL barely usesStats
, there's a large number of usages in some CIL plugins, so I decided not to remove it from CIL itself, but just not use it in Goblint. This is similar to what has been done with tracing at some point: CIL still containsTrace
, but Goblint contains an improved copy asTracing
.time
towrap
, so it'sTiming.wrap
instead ofStats.time
now.jobs
is used to run multiple preprocessors in parallel, then wall time (which is what really matters for interactive usage) will be less than CPU time (which is more indicative of actual work done).printstats
todbg.timing.enabled
.dbg.timing.tef
) for both our normal timings and function analysis times (aka my magic flamegraphs). Documentation for viewing this is included. In TEF additional metadata can be included for timed sections, e.g. parsing timings have their filename attached, so it's easy to find out which files take the longest to parse.TODO
printstats
rename.