bpftrace测量函数耗时

bpftrace可以通过在函数开始和结束时打桩,测量两者的间隔得到函数的执行时间。目前能够在内核函数返回时时插装的主要是kprobe。下面是一个例子:

#!/usr/bin/bpftrace

kprobe:try_to_wake_up
{
     @start[tid] = nsecs;
}

kretprobe:try_to_wake_up
/@start[tid] != 0/
{
     @ns[tid] = avg(nsecs - @start[tid]);
     delete(@start[tid]);
}

执行后ctl C终止bpftrace后就可以@ns的输出就是函数的耗时。

posted on 2025-09-22 16:42  半山随笔  阅读(15)  评论(0)    收藏  举报

导航