[IPython-user] What is System time in timing report?
Dick Moores
rdm@rcblue....
Sun Aug 17 04:50:47 CDT 2008
Thanks very much!
Dick
At 02:04 AM 8/17/2008, Fernando Perez wrote:
>Hi Dick,
>
>sorry for the delayed reply...
>
>On Fri, Jul 25, 2008 at 7:59 AM, Dick Moores <rdm@rcblue.com> wrote:
> > In [12]: run -t -N100 1s.py
> >
> > IPython CPU timings (estimated):
> > Total runs performed: 100
> > Times : Total Per run
> > User : 4.08950523041 s, 0.0408950523041 s.
> > System: 0.0 s, 0.0 s.
> >
> > What is "System"? And what kind of things in a script would raise
> > System time above zero?
>
>On a Unix OS, the kernel distiguishes between time spent by your
>program making system calls and time running your own code. So for
>example if your script makes lots of large memory allocations, you may
>see sufficient system time reported. Windows doesn't report system
>time separately, so under windows this is always zero. IPython gets
>this information via the getrusage call:
>
>
>
>
>NAME
> getrusage - get resource usage
>
>SYNOPSIS
> #include <sys/time.h>
> #include <sys/resource.h>
>
> int getrusage(int who, struct rusage *usage);
>
>DESCRIPTION
> getrusage() returns current resource usages, for a
> who of either
> RUSAGE_SELF or RUSAGE_CHILDREN. The former asks
> for resources used by
> the calling process, the latter for resources used by those
> of its chil-
> dren that have terminated and have been waited for.
>
> struct rusage {
> struct timeval ru_utime; /* user time used */
> struct timeval ru_stime; /* system time used */
> long ru_maxrss; /* maximum resident set size */
> long ru_ixrss; /* integral shared memory size */
> long ru_idrss; /* integral unshared data size */
> long ru_isrss; /* integral unshared stack size */
> long ru_minflt; /* page reclaims */
> long ru_majflt; /* page faults */
> long ru_nswap; /* swaps */
> long ru_inblock; /* block input operations */
> long ru_oublock; /* block output operations */
> long ru_msgsnd; /* messages sent */
> long ru_msgrcv; /* messages received */
> long ru_nsignals; /* signals received */
> long ru_nvcsw; /* voluntary context switches */
> long ru_nivcsw; /* involuntary context switches */
> };
>
>
>Cheers,
>
>f
More information about the IPython-user
mailing list