PyVmMonitor
PyVmMonitor is a profiler with a simple goal: being the best way to profile a Python program.
Current Features
- Attach profiler to a running (CPython) program
- Deterministic profiling through cProfile/profile integration
- On demand profiling with Yappi integration
- Analyze existing PStats results
- Open DOT files
- Programatic API access
- Profile on a different machine
- Multiple processes support (multiprocessing, django...)
- Live sampling/CPU view
- Select time range
- Group samples by method or line
- PyDev integration
- PyCharm integration
View the Manual for more information
Release notes: 3.0.0
- Python versions from 3.7 up to 3.11 are now fully supported.
- Attach to process is now available for these versions.
- yappi pre-built binaries for Windows are available for these versions as well as Python 3.12.
- On other systems a `pip install yappi` is required so that yappi is available in the system being profiled.
- Python 3.12 has all features except attach to process.
- i.e.: to use with Python 3.12, it needs to be attached from the command line or by editing code to do the attach.
- PyVmMonitor itself is now built with Python 3.10.
- On Linux, ubuntu-20.04 is the minimum version required.