17 lines
488 B
Python
Executable File
17 lines
488 B
Python
Executable File
#!/usr/bin/python
|
|
# Copyright (c) PLUMgrid, Inc.
|
|
# Licensed under the Apache License, Version 2.0 (the "License")
|
|
|
|
from bcc import BPF
|
|
from time import sleep
|
|
|
|
b = BPF(src_file="task_switch.c")
|
|
b.attach_kprobe(event_re="^finish_task_switch$|^finish_task_switch\.isra\.\d$",
|
|
fn_name="count_sched")
|
|
|
|
# generate many schedule events
|
|
for i in range(0, 100): sleep(0.01)
|
|
|
|
for k, v in b["stats"].items():
|
|
print("task_switch[%5d->%5d]=%u" % (k.prev_pid, k.curr_pid, v.value))
|