mbox series

[0/2] Make Sched event plugin use its own data collections

Message ID 20181130154211.4575-1-ykaradzhov@vmware.com (mailing list archive)
Headers show
Series Make Sched event plugin use its own data collections | expand

Message

Yordan Karadzhov Nov. 30, 2018, 3:42 p.m. UTC
These two patches aim to restore the log(n) time complexity of
the latency plotting, by adding Data Collections for Sched events.

Steven, please try playing with this modification before applying it.
If you can test this, when doing some real work this would be great.

Yordan Karadzhov (2):
  kernel-shark-qt: Add a method for adding a new collection to a list
  kernel-shark-qt: Make Sched event plugin use its own data collections

 kernel-shark-qt/src/libkshark-collection.c  | 45 ++++++++++++++++++++-
 kernel-shark-qt/src/libkshark.c             |  1 +
 kernel-shark-qt/src/libkshark.h             |  9 +++++
 kernel-shark-qt/src/plugins/SchedEvents.cpp | 33 ++++++---------
 kernel-shark-qt/src/plugins/sched_events.c  | 21 ++++++++++
 kernel-shark-qt/src/plugins/sched_events.h  |  6 +++
 6 files changed, 93 insertions(+), 22 deletions(-)

Comments

Steven Rostedt Nov. 30, 2018, 4:12 p.m. UTC | #1
On Fri, 30 Nov 2018 15:42:35 +0000
Yordan Karadzhov <ykaradzhov@vmware.com> wrote:

> These two patches aim to restore the log(n) time complexity of
> the latency plotting, by adding Data Collections for Sched events.
> 
> Steven, please try playing with this modification before applying it.
> If you can test this, when doing some real work this would be great.

This works awesomely!

Check out this screenshot:

  http://rostedt.org/private/ks-latency.png

The old way I could not see that huge wake up latency. Also, I noticed
that fsync got preempted (see the red square to the left).

I have to ask, how hard is it to click on the wakeup (the start of
the green box) and get the marker to go there? I can find it difficult
to measure because I can't get the marker to set to the start without
doing a search for the wakeup.

-- Steve


> 
> Yordan Karadzhov (2):
>   kernel-shark-qt: Add a method for adding a new collection to a list
>   kernel-shark-qt: Make Sched event plugin use its own data collections
> 
>  kernel-shark-qt/src/libkshark-collection.c  | 45 ++++++++++++++++++++-
>  kernel-shark-qt/src/libkshark.c             |  1 +
>  kernel-shark-qt/src/libkshark.h             |  9 +++++
>  kernel-shark-qt/src/plugins/SchedEvents.cpp | 33 ++++++---------
>  kernel-shark-qt/src/plugins/sched_events.c  | 21 ++++++++++
>  kernel-shark-qt/src/plugins/sched_events.h  |  6 +++
>  6 files changed, 93 insertions(+), 22 deletions(-)
>