All Projects → fabianp → Yep

fabianp / Yep

Profiler for Python extensions

Programming Languages

python
139335 projects - #7 most used programming language

=============================== The Python Extension Profiler

extension_profiler is a tool to profile compiled code (C/C++/Fortran) from the Python interpreter. It uses the google-perftools CPU profiler and depends on pprof (google-pprof on Debian) for visualization.

Install

This package depends on google-perftools (package google-perftools in Debian). Once you have fulfilled these depencies you can install it with easy_install::

$ easy_install -U yep

or download the package, uncompress and execute the standard command::

$ python setup.py install

However, since the package one-file distribution, you can also just put yep.py somewhere in your $PYTHONPATH.

Usage

There are various ways to use the profiler. The simplest is add this module as argument to the Python interpreter when running your script and add flag -v to visualize the result::

$ python -m yep -v -- my_script.py [arg] ... ...

This will create a file my_script.py.prof that can be analyzed with pprof. Execute python -m yep to get the full list of options.

It is also possible to manually start/stop the profiler from inside Python code::

>>> import yep
>>> yep.start('file_name.prof')
>>> # do your computations
>>> yep.stop()

This will create a file_name.prof to be analized with pperf.

Development

Git repository can be found here::

https://github.com/fabianp/yep

Bugs

Visualize the result with -v will only work on UNIX. An option --prof= would also be nice.

Misc

Author: Fabian Pedregosa [email protected]

License

Simplified BSD License, (C) 2011 Fabian Pedregosa.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].