mirror of
https://github.com/python/cpython.git
synced 2025-08-03 16:39:00 +00:00
Added the cProfile module.
Based on lsprof (patch #1212837) by Brett Rosen and Ted Czotter. With further editing by Michael Hudson and myself. History in svn repo: http://codespeak.net/svn/user/arigo/hack/misc/lsprof * Module/_lsprof.c is the internal C module, Lib/cProfile.py a wrapper. * pstats.py updated to display cProfile's caller/callee timings if available. * setup.py and NEWS updated. * documentation updates in the profiler section: - explain the differences between the three profilers that we have now - profile and cProfile can use a unified documentation, like (c)Pickle - mention that hotshot is "for specialized usage" now - removed references to the "old profiler" that no longer exists * test updates: - extended test_profile to cover delicate cases like recursion - added tests for the caller/callee displays - added test_cProfile, performing the same tests for cProfile * TO-DO: - cProfile gives a nicer name to built-in, particularly built-in methods, which could be backported to profile. - not tested on Windows recently!
This commit is contained in:
parent
5eefdca654
commit
a871ef2b3e
14 changed files with 1701 additions and 109 deletions
4
setup.py
4
setup.py
|
@ -328,7 +328,6 @@ class PyBuildExt(build_ext):
|
|||
# Some modules that are normally always on:
|
||||
exts.append( Extension('regex', ['regexmodule.c', 'regexpr.c']) )
|
||||
|
||||
exts.append( Extension('_hotshot', ['_hotshot.c']) )
|
||||
exts.append( Extension('_weakref', ['_weakref.c']) )
|
||||
|
||||
# array objects
|
||||
|
@ -363,6 +362,9 @@ class PyBuildExt(build_ext):
|
|||
exts.append( Extension("functional", ["functionalmodule.c"]) )
|
||||
# Python C API test module
|
||||
exts.append( Extension('_testcapi', ['_testcapimodule.c']) )
|
||||
# profilers (_lsprof is for cProfile.py)
|
||||
exts.append( Extension('_hotshot', ['_hotshot.c']) )
|
||||
exts.append( Extension('_lsprof', ['_lsprof.c', 'rotatingtree.c']) )
|
||||
# static Unicode character database
|
||||
if have_unicode:
|
||||
exts.append( Extension('unicodedata', ['unicodedata.c']) )
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue