GNU Info

Info Node: (python2.1-lib.info)Profiler Changes

(python2.1-lib.info)Profiler Changes


Next: Instant Users Manual Prev: Profiler Introduction Up: Python Profiler
Enter node , (file) or (file)node

How Is This Profiler Different From The Old Profiler?
=====================================================

(This section is of historical importance only; the old profiler
discussed here was last seen in Python 1.1.)

The big changes from old profiling module are that you get more
information, and you pay less CPU time.  It's not a trade-off, it's a
trade-up.

To be specific:

`Bugs removed:'
     Local stack frame is no longer molested, execution time is now
     charged to correct functions.

`Accuracy increased:'
     Profiler execution time is no longer charged to user's code,
     calibration for platform is supported, file reads are not done _by_
     profiler _during_ profiling (and charged to user's code!).

`Speed increased:'
     Overhead CPU cost was reduced by more than a factor of two
     (perhaps a factor of five), lightweight profiler module is all
     that must be loaded, and the report generating module (`pstats')
     is not needed during profiling.

`Recursive functions support:'
     Cumulative times in recursive functions are correctly calculated;
     recursive entries are counted.

`Large growth in report generating UI:'
     Distinct profiles runs can be added together forming a
     comprehensive report; functions that import statistics take
     arbitrary lists of files; sorting criteria is now based on
     keywords (instead of 4 integer options); reports shows what
     functions were profiled as well as what profile file was
     referenced; output format has been improved.


automatically generated by info2www version 1.2.2.9