[PATCH] D45758: [XRay][profiler] Part 3: Profile Collector Service
Dean Michael Berris via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 18 01:05:11 PDT 2018
dberris created this revision.
dberris added reviewers: echristo, pelikan, kpw.
Herald added a subscriber: mgorny.
This is part of the larger XRay Profiling Mode effort.
This patch implements a centralised collector for `FunctionCallTrie`
instances, associated per thread. It maintains a global set of trie
instances which can be retrieved through the XRay API for processing
in-memory buffers (when registered). Future changes will include the
wiring to implement the actual profiling mode implementation.
This central service provides the following functionality:
- Posting a `FunctionCallTrie` associated with a thread, to the central list of tries.
- Serializing all the posted `FunctionCallTrie` instances into in-memory buffers.
- Resetting the global state of the serialized buffers and tries.
Depends on https://reviews.llvm.org/D45757.
https://reviews.llvm.org/D45758
Files:
compiler-rt/lib/xray/CMakeLists.txt
compiler-rt/lib/xray/tests/unit/CMakeLists.txt
compiler-rt/lib/xray/tests/unit/profile_collector_test.cc
compiler-rt/lib/xray/xray_profile_collector.cc
compiler-rt/lib/xray/xray_profile_collector.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45758.142891.patch
Type: text/x-patch
Size: 18352 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180418/a6b4ac85/attachment.bin>
More information about the llvm-commits
mailing list