On Fri, Feb 12, 2016 at 03:57:59PM +0000, Mahmood Naderan via dtrace-discuss 
wrote:
> Hello,I use a script to measure the system calls counts as well as their run 
> time. Thank to Jim Mauro, you can see the script at 
> https://www.mail-archive.com/dtrace-discuss@lists.dtrace.org/msg00004.html
> Problem is recently, I have noticed that the accumulation of reported 
> syscalls time (in micro second) is strange. See this output:
> bash-3.00# su
> Feb 29 22:40:12 server su: 'su root' succeeded for root on /dev/console
> # kill -CONT 1036
> # ./sc.d -p 1036
> dtrace: 41866 dynamic variable drops with non-empty dirty list
> dtrace: 50990 dynamic variable drops with non-empty dirty list
> ^C
> dtrace: 26719 dynamic variable drops with non-empty dirty list
> SYSCALL          COUNT    TIME(us)
> fdsync           3        322593  
> rename           4        112     
> stat             11       18      
> lwp_mutex_wakeup 15       78      
> mprotect         23       396     
> pollsys          58       2040311 
> lwp_sigmask      117      349     
> setcontext       117      454     
> lwp_park         320      8525843 
> lwp_mutex_timedlock 364      2030    
> yield            725      568670  
> write            6737     45526   
> open             27491    353860  
> fcntl            27506    54801   
> close            27529    54292   
> lwp_cond_signal  48837    152506  
> lwp_cond_wait    48891    616603479
> lseek            58049    113307  
> send             72409    267314  
> read             126334   29247492
> fstat            127719   254078  
> 
> # date
> Wed Feb 29 22:40:17 EST 2012
> # 
> ?
> As you can see time of running su was 22:40:12 and the time at the
> exit point? was 22:40:17. That means the dtrace ran for about 5
> seconds. However, if you sum up the micro seconds, you will see
> 658,607,509 us which is about 658 seconds.
>
> Isn't that strange for you? If you think I am mistaking somewhere,
> please let me know. Otherwise, I will explain with more details later.

Given that there are calls to lwp_park() and lwp_* calls, this is clearly a
multi-threaded program.  So it's easy to imagine that ~100 threads or more
could give you these results.

Cheers,
- jonathan



-------------------------------------------
dtrace-discuss
Archives: https://www.listbox.com/member/archive/184261/=now
RSS Feed: https://www.listbox.com/member/archive/rss/184261/25769126-e243886f
Modify Your Subscription: 
https://www.listbox.com/member/?member_id=25769126&id_secret=25769126-8d47a7b2
Powered by Listbox: http://www.listbox.com

Reply via email to