diff options
author | Fred Drake <fdrake@acm.org> | 2007-10-11 18:01:43 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 2007-10-11 18:01:43 (GMT) |
commit | 0e474a801ac6e01a24b900183ef101962148f317 (patch) | |
tree | 18376be3413a5cd6ebf2bf1a8d091022adf0d9aa /Doc/library | |
parent | b62e8a8062ff81f0f5d80b25aa0fb6b2457c721c (diff) | |
download | cpython-0e474a801ac6e01a24b900183ef101962148f317.zip cpython-0e474a801ac6e01a24b900183ef101962148f317.tar.gz cpython-0e474a801ac6e01a24b900183ef101962148f317.tar.bz2 |
remove hotshot profiler from Py3k
Diffstat (limited to 'Doc/library')
-rw-r--r-- | Doc/library/debug.rst | 1 | ||||
-rw-r--r-- | Doc/library/hotshot.rst | 144 | ||||
-rw-r--r-- | Doc/library/profile.rst | 8 |
3 files changed, 2 insertions, 151 deletions
diff --git a/Doc/library/debug.rst b/Doc/library/debug.rst index 7480087..b2ee4fa 100644 --- a/Doc/library/debug.rst +++ b/Doc/library/debug.rst @@ -12,6 +12,5 @@ allowing you to identify bottlenecks in your programs. bdb.rst pdb.rst profile.rst - hotshot.rst timeit.rst trace.rst
\ No newline at end of file diff --git a/Doc/library/hotshot.rst b/Doc/library/hotshot.rst deleted file mode 100644 index f10facd..0000000 --- a/Doc/library/hotshot.rst +++ /dev/null @@ -1,144 +0,0 @@ - -:mod:`hotshot` --- High performance logging profiler -==================================================== - -.. module:: hotshot - :synopsis: High performance logging profiler, mostly written in C. -.. moduleauthor:: Fred L. Drake, Jr. <fdrake@acm.org> -.. sectionauthor:: Anthony Baxter <anthony@interlink.com.au> - - -This module provides a nicer interface to the :mod:`_hotshot` C module. Hotshot -is a replacement for the existing :mod:`profile` module. As it's written mostly -in C, it should result in a much smaller performance impact than the existing -:mod:`profile` module. - -.. note:: - - The :mod:`hotshot` module focuses on minimizing the overhead while profiling, at - the expense of long data post-processing times. For common usages it is - recommended to use :mod:`cProfile` instead. :mod:`hotshot` is not maintained and - might be removed from the standard library in the future. - -.. warning:: - - The :mod:`hotshot` profiler does not yet work well with threads. It is useful to - use an unthreaded script to run the profiler over the code you're interested in - measuring if at all possible. - - -.. class:: Profile(logfile[, lineevents[, linetimings]]) - - The profiler object. The argument *logfile* is the name of a log file to use for - logged profile data. The argument *lineevents* specifies whether to generate - events for every source line, or just on function call/return. It defaults to - ``0`` (only log function call/return). The argument *linetimings* specifies - whether to record timing information. It defaults to ``1`` (store timing - information). - - -.. _hotshot-objects: - -Profile Objects ---------------- - -Profile objects have the following methods: - - -.. method:: Profile.addinfo(key, value) - - Add an arbitrary labelled value to the profile output. - - -.. method:: Profile.close() - - Close the logfile and terminate the profiler. - - -.. method:: Profile.fileno() - - Return the file descriptor of the profiler's log file. - - -.. method:: Profile.run(cmd) - - Profile an :func:`exec`\ -compatible string in the script environment. The - globals from the :mod:`__main__` module are used as both the globals and locals - for the script. - - -.. method:: Profile.runcall(func, *args, **keywords) - - Profile a single call of a callable. Additional positional and keyword arguments - may be passed along; the result of the call is returned, and exceptions are - allowed to propagate cleanly, while ensuring that profiling is disabled on the - way out. - - -.. method:: Profile.runctx(cmd, globals, locals) - - Profile an :func:`exec`\ -compatible string in a specific environment. The - string is compiled before profiling begins. - - -.. method:: Profile.start() - - Start the profiler. - - -.. method:: Profile.stop() - - Stop the profiler. - - -Using hotshot data ------------------- - -.. module:: hotshot.stats - :synopsis: Statistical analysis for Hotshot - - -This module loads hotshot profiling data into the standard :mod:`pstats` Stats -objects. - - -.. function:: load(filename) - - Load hotshot data from *filename*. Returns an instance of the - :class:`pstats.Stats` class. - - -.. seealso:: - - Module :mod:`profile` - The :mod:`profile` module's :class:`Stats` class - - -.. _hotshot-example: - -Example Usage -------------- - -Note that this example runs the python "benchmark" pystones. It can take some -time to run, and will produce large output files. :: - - >>> import hotshot, hotshot.stats, test.pystone - >>> prof = hotshot.Profile("stones.prof") - >>> benchtime, stones = prof.runcall(test.pystone.pystones) - >>> prof.close() - >>> stats = hotshot.stats.load("stones.prof") - >>> stats.strip_dirs() - >>> stats.sort_stats('time', 'calls') - >>> stats.print_stats(20) - 850004 function calls in 10.090 CPU seconds - - Ordered by: internal time, call count - - ncalls tottime percall cumtime percall filename:lineno(function) - 1 3.295 3.295 10.090 10.090 pystone.py:79(Proc0) - 150000 1.315 0.000 1.315 0.000 pystone.py:203(Proc7) - 50000 1.313 0.000 1.463 0.000 pystone.py:229(Func2) - . - . - . - diff --git a/Doc/library/profile.rst b/Doc/library/profile.rst index 0cbbd86..cc02436 100644 --- a/Doc/library/profile.rst +++ b/Doc/library/profile.rst @@ -57,7 +57,7 @@ This profiler provides :dfn:`deterministic profiling` of any Python programs. It also provides a series of report generation tools to allow users to rapidly examine the results of a profile operation. -The Python standard library provides three different profilers: +The Python standard library provides two different profilers: #. :mod:`profile`, a pure Python module, described in the sequel. Copyright © 1994, by InfoSeek Corporation. @@ -66,15 +66,11 @@ The Python standard library provides three different profilers: it suitable for profiling long-running programs. Based on :mod:`lsprof`, contributed by Brett Rosen and Ted Czotter. -#. :mod:`hotshot`, a C module focusing on minimizing the overhead while - profiling, at the expense of long data post-processing times. - The :mod:`profile` and :mod:`cProfile` modules export the same interface, so they are mostly interchangeables; :mod:`cProfile` has a much lower overhead but is not so far as well-tested and might not be available on all systems. :mod:`cProfile` is really a compatibility layer on top of the internal -:mod:`_lsprof` module. The :mod:`hotshot` module is reserved to specialized -usages. +:mod:`_lsprof` module. .. % \section{How Is This Profiler Different From The Old Profiler?} .. % \nodename{Profiler Changes} |