Messages in this thread | | | Date | Mon, 1 Jul 2013 21:25:26 +0800 | Subject | Re: [V2 1/2] sched: add trace events for task and rq usage tracking | From | Lei Wen <> |
| |
Hi Peter,
On Mon, Jul 1, 2013 at 8:44 PM, Peter Zijlstra <peterz@infradead.org> wrote: > 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?
With the merged trace point like those, we could then draw the load distribution picture easily.
> > >> + 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 :/
Yep, I already notice this duplicated...
> > 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.
You already said what I want to say. :) With the pre-embedded tracepoint, we could make our life easy over tracking the system load, especially since the per-entity load tracking is recently added, people may want to use those trace point to get better understanding for this new feature.
> > 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);
So cleaner than my previous one!
> > The tracepoints themselves could very well extract whatever they want from > that; no need to actually write it out. > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/
| |