top(1) loses process user time count when threads end

Yuri yuri at rawbw.com
Sat Aug 6 03:52:47 UTC 2011


I have the process that first runs in 3 threads but later two active 
threads exit.

top(1) shows this moment this way (1 sec intervals):
30833 yuri            3  76    0  4729M  4225M nanslp  4   0:32 88.62% app
30833 yuri            3  76    0  4729M  4225M nanslp  6   0:34 90.92% app
30833 yuri            1  96    0  4729M  4225M CPU1    1   0:03  1.17% app
30833 yuri            1  98    0  4729M  4226M CPU1    1   0:04 12.89% app

Process time goes down: 0:34 -> 0:03. Also WCPU goes down 90.92% -> 
1.17% even though this process is CPU bound and does intense things 
right after threads exit.

getrusage(2) though, called in the process, shows the correct user time.

I think this is the major bug in the process time accounting.

8.2-STABLE

Yuri


More information about the freebsd-questions mailing list