llvm/tools/llvm-xray
Keith Wyss ed2657e43a [XRay] Minimal tool to convert xray traces to Chrome's Trace Event Format.
Minimal tool to convert xray traces to Chrome's Trace Event Format.

Summary:
Make use of Chrome Trace Event format's Duration events and stack frame dict to
produce Json files that chrome://tracing can visualize from xray function call
traces. Trace Event format is more robust and has several features like
argument logging, function categorization, multi process traces, etc. that we
can add as needed. Duration events cover an important base case.

Part of this change is rearranging the code so that the TrieNode data structure
can be used from multiple tools and can carry parameterized baggage on the
nodes. I put the actual behavior changes in llvm-xray convert exclusively.

Exploring the trace of instrumented llc was pretty nifty if overwhelming.
I can envision this being very useful for analyzing contention scenarios or
tuning parameters like batch sizes in a producer consumer queue. For more
targeted traces likemthis, let's talk about how we want to approach trace
pruning.

Reviewers: dberris, pelikan

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D39362

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@317531 91177308-0d34-0410-b5e6-96231b3b80d8
2017-11-07 00:28:28 +00:00
..
CMakeLists.txt [XRay][tools] Function call stack based analysis tooling for XRay traces 2017-09-07 18:07:48 +00:00
func-id-helper.cc
func-id-helper.h
llvm-xray.cc Don't call exit from cl::PrintHelpMessage. 2017-09-07 23:30:48 +00:00
trie-node.h [XRay] Minimal tool to convert xray traces to Chrome's Trace Event Format. 2017-11-07 00:28:28 +00:00
xray-account.cc [XRay] fix the -Werror build by handling all enum cases in switches 2017-09-27 05:10:31 +00:00
xray-account.h
xray-color-helper.cc
xray-color-helper.h
xray-converter.cc [XRay] Minimal tool to convert xray traces to Chrome's Trace Event Format. 2017-11-07 00:28:28 +00:00
xray-converter.h [XRay] Minimal tool to convert xray traces to Chrome's Trace Event Format. 2017-11-07 00:28:28 +00:00
xray-extract.cc Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
xray-graph-diff.cc [XRay][tools] Remove wayward semicolon (NFC) 2017-04-26 03:49:49 +00:00
xray-graph-diff.h [XRay][tools] Fixup for pedantic and permissive errors/warnings 2017-04-24 06:15:53 +00:00
xray-graph.cc [XRay] convert FDR arg1 log entries 2017-09-27 04:48:03 +00:00
xray-graph.h [XRay][tools] Fixup definition for stat division. 2017-04-26 01:35:23 +00:00
xray-record-yaml.h [XRay][tools] Function call stack based analysis tooling for XRay traces 2017-09-07 18:07:48 +00:00
xray-registry.cc
xray-registry.h
xray-stacks.cc [XRay] Minimal tool to convert xray traces to Chrome's Trace Event Format. 2017-11-07 00:28:28 +00:00