2010/11/13 Simon King <simon.k...@uni-jena.de>:
> Hi Dave!
>
> On 12 Nov., 16:22, "Dr. David Kirkby" <david.kir...@onetel.net> wrote:
>> On 11/12/10 03:10 PM, Dr. David Kirkby wrote:
>>
>> I meant to say Sage is NOT the place to
>>
>> look. vmstat, sar (possibly top) are worth looking at.
>
> top would not help. It simply says that my process is sometimes only
> taking 30% CPU time, but it gives no indication *why*. Note that it is
> only a guess that I/O are to blame.
>
> Moreover, a system tool would not tell me in what part of my programs
> the problem is located. "prun" might give some hint. However, since my
> programs use external programs as well as compiled components and
> interfaces, I was hoping for a tool that tracks all I/O processes
> occuring during my computation.
>
> Perhaps there is a system tool for that purpose. I think it would help
> me if some tool would produce a list of all file names to which I/O
> happened, and record the I/O time for each file.

  Probably the best tool on linux should be perf, e.g:

$ perf record -f /bin/sh -c "complex command line"
$ perf report

-f to overwrite previous recording and "/bin/sh -c" if needs pipes, etc
better to do it on an idle system as it reports time kernel and in other
processes.

  Example in my computer (while doing a system update)
$ perf record -f sage
----------------------------------------------------------------------
| Sage Version 4.6, Release Date: 2010-10-30                         |
| Type notebook() for the GUI, and license() for information.        |
----------------------------------------------------------------------
sage:
Exiting Sage (CPU time 0m0.08s, Wall time 0m7.88s).
[ perf record: Woken up 2 times to write data ]
[ perf record: Captured and wrote 0.451 MB perf.data (~19711 samples) ]

$ perf report|less
# Samples: 14408076653
#
# Overhead       Command
                       Shared Object  Symbol
# ........  ............  ......................................................
....................................  ......
#
    13.46%        python  libpython2.7.so.1.0
                                      [.] PyParser_AddToken
    11.32%        python  libpython2.7.so.1.0
                                      [.] 0x00000000027ca8
     7.84%        python  libpython2.7.so.1.0
                                      [.] 0x000000000643bd
     5.46%        python  libpython2.7.so.1.0
                                      [.] 0x000000000ca601
     3.79%        python  libpython2.7.so.1.0
                                      [.] 0x000000000725fb
     2.63%        python  libpython2.7.so.1.0
                                      [.] PyEval_EvalFrameEx
     2.26%        python  libpython2.7.so.1.0
                                      [.] PyTokenizer_Get
     2.25%        python  libpython2.7.so.1.0
                                      [.] 0x000000000dc72c
     2.16%        python  libpython2.7.so.1.0
                                      [.] PyObject_Malloc
     2.15%        python  libpython2.7.so.1.0
                                      [.] PyObject_Free
     2.08%        python  libpython2.7.so.1.0
                                      [.] PyNode_AddChild
[...]

> Best regards,
> Simon

Paulo

-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to