Re: rusage breakdown and cpu limits.
- From: Julian Elischer <julian@xxxxxxxxxxxx>
- Date: Tue, 29 May 2007 16:56:59 -0700
Jeff Roberson wrote:
On Wed, 30 May 2007, Bruce Evans wrote:
On Tue, 29 May 2007, Julian Elischer wrote:
Jeff Roberson wrote:I think I'm going to make the rusage struct per-thread and aggregate it on demand. There will be a lot of code churn, but it will be simple. There are a few cases where which will be complicated, and cpulimit is one of them.
So, there should be somewhere to store the aggregated stats from threads that have already exited.
We already have that. It is the per-process rusage. There is already
delayed accumulation for tick counts (these are currently accumulated in
the rusage from the thread at context switch time). There is also
delayed conversion of stats to the form needed by getrusage(). Stats
are kept in raw form as long as possible (forever if nothing calls
getrusage() or wait[34]() to look at them) to avoid conversion overhead
for them on every exit(). So there are many precedents for delayed
stats handling.
From thread_exit():/* Add our usage into the usage of all our children. */
if (p->p_numthreads == 1)
ruadd(p->p_ru, &p->p_rux, &p->p_stats->p_cru, &p->p_crux);
This is only called when the last thread is exiting (as part of exit())
.... and we are adding our process's rusage to the storage for
have already put their rusage numbers. I assume that wait() will reap it from there later.
making it per-thread would effectively remove the conditional and make something
similar happen on every thread_exit(). (not necessarily a bad thing).
Is the comment wrong or the code wrong? This adds our child's rusage to our own. I assume the comment is actually wrong and that we're adding our children's resource usage to our own so the pstats structure can be freed and our parent can aggregate it all together.
Jeff
Bruce
_______________________________________________
freebsd-arch@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@xxxxxxxxxxx"
- References:
- rusage breakdown and cpu limits.
- From: Jeff Roberson
- Re: rusage breakdown and cpu limits.
- From: John Baldwin
- Re: rusage breakdown and cpu limits.
- From: Jeff Roberson
- Re: rusage breakdown and cpu limits.
- From: Julian Elischer
- Re: rusage breakdown and cpu limits.
- From: Bruce Evans
- Re: rusage breakdown and cpu limits.
- From: Jeff Roberson
- rusage breakdown and cpu limits.
- Prev by Date: Re: rusage breakdown and cpu limits.
- Next by Date: Re: initial rusage patch.
- Previous by thread: Re: rusage breakdown and cpu limits.
- Next by thread: Re: rusage breakdown and cpu limits.
- Index(es):
Relevant Pages
|
|