lkml.org 
[lkml]   [2013]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [V2 1/2] sched: add trace events for task and rq usage tracking
On Mon, Jul 01, 2013 at 08:33:21PM +0800, Lei Wen wrote:
> Since we could track task in the entity level now, we may want to
> investigate tasks' running status by recording the trace info, so that
> could make some tuning if needed.

Why would I want to merge this?


> + trace_sched_task_weighted_load(task_of(se), se->avg.load_avg_contrib, se->load.weight);
> + trace_sched_task_weighted_load(task_of(se), se->avg.load_avg_contrib, se->load.weight);

> + trace_sched_cfs_rq_runnable_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->runnable_load_avg, cfs_rq->load.weight);

> + trace_sched_cfs_rq_blocked_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->blocked_load_avg,
> + cfs_rq->blocked_load_avg + cfs_rq->runnable_load_avg);

> + trace_sched_cfs_rq_blocked_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->blocked_load_avg,
> + cfs_rq->blocked_load_avg + cfs_rq->runnable_load_avg);

> + trace_sched_cfs_rq_blocked_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->blocked_load_avg,
> + cfs_rq->blocked_load_avg + cfs_rq->runnable_load_avg);

> + trace_sched_cfs_rq_runnable_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->runnable_load_avg, cfs_rq->load.weight);

> + trace_sched_cfs_rq_blocked_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->blocked_load_avg,
> + cfs_rq->blocked_load_avg + cfs_rq->runnable_load_avg);

> + trace_sched_cfs_rq_blocked_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->blocked_load_avg,
> + cfs_rq->blocked_load_avg + cfs_rq->runnable_load_avg);

> + trace_sched_cfs_rq_blocked_load(cpu_of(rq_of(cfs_rq)),
> + cfs_rq->blocked_load_avg,
> + cfs_rq->blocked_load_avg + cfs_rq->runnable_load_avg);

You're not lazy enough by far, you seem to delight in endless repetition :/

How about you first convince me we actually want to merge this; big hint,
there's a significant lack of tracepoints in the entire balancer.

Secondly; WTH didn't you do:

trace_sched_task_weighted_load(se);
trace_sched_cfs_rq_runnable_load(cfs_rq);
trace_sched_cfs_rq_blocked_load(cfs_rq);

The tracepoints themselves could very well extract whatever they want from
that; no need to actually write it out.


\
 
 \ /
  Last update: 2013-07-01 15:21    [W:0.090 / U:0.440 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site