A basic wrapper around cProfile with snakeviz/tuna integration
Project description
Releases can be installed via pip from pypi
A simple library for a one-liner performance profile using cProfile
and snakeviz! Upon import, will profile your code (profile file will
be stats.prof in your current working directory) and launch snakeviz
to visualize it. The snakeviz webserver will be open for about 5 seconds
before it gets killed by ez_profile. The webpage will still be visible
and interactable though, until you refresh the page.
There is a problem with IDLE where the webserver may not be killed,
but a SystemError will get raised. This is a known problem and appears to
be an issue with IDLE and/or Python itself. If I find a solution, I will
fix the problem, but for now IDLE is considered incompatible with ez_profile.
This is meant for internal usage, but if you dont want ez_profile to profile
your code, you can pass the --ignore commandline flag. This will bypass ez_profile
completely.
Notes about usage:
import ez_profile should be at the top of your main file. It profiles the
entire project, and to do so, it runs the main file in a separate process.
If you put this anywhere else in your project, the part before import ez_profile
will not be profiled, and the whole project will be killed after the profiling is
completed.
Usage:
# note that this should be at the top of your script
import ez_profile # this is all you need
<all of your other code>
New in 0.1.6
--fname commandline argument to specify where you want the output profile to be saved
python file.py --fname "/path/to/custom/location/file.prof"
python file.py --fname "custom_filename.prof"
New in 0.1.7
--gui commandline argument to specify which profile viewer you want to use. Defaults to "snakeviz"
For example, if you want to use tuna instead, you can.
python file.py --gui tuna
Credit for the idea goes to matiiss
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ez_profile-0.1.9.tar.gz.
File metadata
- Download URL: ez_profile-0.1.9.tar.gz
- Upload date:
- Size: 3.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
39bb71b4848ded123d4446d88278dc32f83d3384432f611e7c78cb3732cd6631
|
|
| MD5 |
c75a590b586d77a4f8e10883cfe3cbdd
|
|
| BLAKE2b-256 |
5c45c2db7d04e3152396c00ae9f9b2bbce38f0b816481ec384f0d75da9185609
|