On 29/02/2024 03:35, Brian Hutchinson wrote:
Hi, I've long been interested in the ARM Coresight tools and played around with OpenOCD some. I'm just now getting into OpenCSD so please forgive the noob question but I did search the archives first.
I'm curious if the format of OpenCSD traces is such that other tools like TraceCompass can unwind and graphically show them.
I'm wondering if I can get like LTTng type info (system wide big picture - kernel plus userspace) out of OpenCSD but take advantage of the built in hardware (ETM etc.) that shouldn't introduce as much latency as other tools like LTTng, trace-cmd etc.
Thanks,
Brian
Hi Brian,
I don't really have any experience with LTTng or TraceCompass, but it looks like they are more geared towards higher level event based tracing, where as OpenCSD is at the instruction level.
It doesn't look like there is currently any integration between OpenCSD and those tools, but I suppose it depends on what you want to accomplish exactly whether they could be integrated or not.
You mention "system wide big picture" and to me that suggests events and PMU counters, rather than ETM trace. I think making sense of the instruction stream of absolutely everything running on a system is going to be difficult and a lot of data.
For reference, some examples of where ETM trace is useful is in providing waypoints for optimising compliation, like with AutoFDO. Or for debugging, where you can see exactly which steps led up to some state.
Thanks James