Messages in this thread | | | Date | Thu, 18 Oct 2007 15:57:35 -0700 | From | "Ken Chen" <> | Subject | Re: [patch] sched: schedstat needs a diet |
| |
On 10/18/07, Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca> wrote: > Good question indeed. How large is this memory footprint exactly ? If it > is as small as you say, I suspect that the real issue could be that > these variable are accessed by the scheduler critical paths and > therefore trash the caches.
Maybe my wording was ambiguous, I meant to reduce cache line pollution when accessing these schedstat fields.
With unsigned long, on x86_64, schedstat consumes 288 bytes for each sched_domain and 128 bytes in struct rq. On a extremely small system that has a couple of CPU sockets with one level of numa node, there will be 704 bytes per CPU for schedstat. Given the sparseness of them, we are probably talking about 11-12 cache line eviction on several heavily used scheduler functions. Reduce cache line pollution is the primary goal, actual memory consumption isn't really a concern.
- Ken - 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/
| |