On Tue, 30 Apr 2024 13:01:47 +0100 David Aldrich <david.aldrich.ntml@xxxxxxxxx> wrote: > Hi, I am new to trace and KernelShark. We are developing a real-time > application on Ubuntu 22.04. We see some jitter in some tasks and we > need a tool to help us analyse what tasks are being scheduled on a > specific cpu. I assume that trace and KernelShark can help us with > this. Am I correct? For jitter, I don't usually use kernelshark but just trace-cmd itself. Although, if the jitter is caused by many applications, then kernelshark can be useful. > > A complication is that we are running the application on a server, not > a desktop system. In fact we have no desktop Linux systems available. > I am wondering if we could capture the trace data on the server and > then analyse it offline using KernelShark running on Windows Subsystem > for Linux (WSL) on a Windows laptop? Do you think that is feasible? Yes, kernelshark reads the trace-cmd "trace.dat" file that it creates, and if you have a Linux system (VM on Windows) then you can read that trace.dat file from kernelshark there. > > Is KernelShark available as a package, or must it be built by the user? Yes, it's available as a package on Ubuntu (and other distros). > > Any tips on how to capture the trace data and analyse it with > KernelShark would be appreciated. Well, I usually use just trace-cmd. I gave a talk about analyzing cyclictest jitter with using trace-cmd as well as the libtracefs libraries. https://www.youtube.com/watch?v=m1IS3-l_22Y -- Steve