Skip to main content

A module for profiling compiled extensions

Project description

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 <fabian.pedregosa@inria.fr>

License

Simplified BSD License, (C) 2011 Fabian Pedregosa.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

yep-0.4.tar.gz (3.5 kB view details)

Uploaded Source

File details

Details for the file yep-0.4.tar.gz.

File metadata

  • Download URL: yep-0.4.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for yep-0.4.tar.gz
Algorithm Hash digest
SHA256 41eac9625335b41657bcaf87083edf9e1a95178ea3c7ad3dd6d6ff5e2fe7ceea
MD5 b78a9232a296bbd416c038d1b588dff6
BLAKE2b-256 a67131d335c09755fd8773cb9d66210ff1b1ae34560d9020ac8218c9c51c5e2a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page