All Projects → uber-archive → Pyflame

uber-archive / Pyflame

Licence: apache-2.0
🔥 Pyflame: A Ptracing Profiler For Python. This project is deprecated and not maintained.

Programming Languages

python
139335 projects - #7 most used programming language
C++
36643 projects - #6 most used programming language
M4
1887 projects
shell
77523 projects

Projects that are alternatives of or similar to Pyflame

installer-linux
💾 SinusBot Installer for Debian, Ubuntu and CentOS - Installs the SinusBot with a single command.
Stars: ✭ 28 (-99.04%)
Mutual labels:  debian, fedora
piu
Cross platform package manager wrapper
Stars: ✭ 33 (-98.87%)
Mutual labels:  debian, fedora
Autodesk-Fusion-360-for-Linux
This is a project, where I give you a way to use Autodesk Fusion 360 on Linux!
Stars: ✭ 810 (-72.35%)
Mutual labels:  debian, fedora
Boostnote-packages
Repo containing .rpm, .deb and Boostnote app folder
Stars: ✭ 31 (-98.94%)
Mutual labels:  debian, fedora
home-assistant-ansible
🎭 Ansible playbooks/role for the setup of Home Assistant.
Stars: ✭ 48 (-98.36%)
Mutual labels:  debian, fedora
vagrant-templates
Vagrantfiles for self-contained development/test environments.
Stars: ✭ 28 (-99.04%)
Mutual labels:  debian, fedora
Linux-Active-Directory-join-script
Active directory Join script for Ubuntu, Debian, CentOS, Linux Mint, Fedora, Kali, Elementary OS and Raspbian with built in failchcheck and debugmode for Ubuntu. "The most advanced and updated AD join script on GITHUB for Linux"
Stars: ✭ 97 (-96.69%)
Mutual labels:  debian, fedora
Kvm Install Vm
Bash script to build local virtual machines using KVM/libvirt and cloud-init.
Stars: ✭ 248 (-91.54%)
Mutual labels:  debian, fedora
PXESetupWizard
PXE Setup Wizard. Netboot Debian, Ubuntu, System Rescue CD, FreeDOS and more.
Stars: ✭ 96 (-96.72%)
Mutual labels:  debian, fedora
packer-kvm
Create VM templates with Packer for usage with Libvirt/KVM virtualization : CentOS 7, CentOS 8, CentOS 8 Stream, Alma Linux, Rocky Linux, Bionic (Ubuntu 1804), Focal (Ubuntu 2004), Debian 11 (stable), Kali Linux, Fedora 33 and Fedora 34.
Stars: ✭ 99 (-96.62%)
Mutual labels:  debian, fedora
notion-linux
Native Notion packages for Linux
Stars: ✭ 887 (-69.73%)
Mutual labels:  debian, fedora
ansible-role-daemonize
Ansible Role - Daemonize.
Stars: ✭ 14 (-99.52%)
Mutual labels:  debian, fedora
Invidious-Updater
Automatic install and update script for Invidious
Stars: ✭ 181 (-93.82%)
Mutual labels:  debian, fedora
notion-repackaged
notion executables with the notion-enhancer embedded & a vanilla port of the official app to linux
Stars: ✭ 733 (-74.98%)
Mutual labels:  debian, fedora
wsl-distrod
Distrod is a meta-distro for WSL 2 which installs Ubuntu, Arch, Debian, Gentoo, etc. with systemd in a minute for you. Distrod also has built-in auto-start feature on Windows startup and port forwarding ability.
Stars: ✭ 1,637 (-44.13%)
Mutual labels:  debian, fedora
LinuxMirrors
Linux 一键更换国内软件源
Stars: ✭ 623 (-78.74%)
Mutual labels:  debian, fedora
Uwsgi Nginx Flask Docker
Docker image with uWSGI and Nginx for Flask applications in Python running in a single container. Optionally with Alpine Linux.
Stars: ✭ 2,607 (-11.02%)
Mutual labels:  debian, uwsgi
Howdy
🛡️ Windows Hello™ style facial authentication for Linux
Stars: ✭ 3,237 (+10.48%)
Mutual labels:  debian, fedora
ansible-role-docker-ce
Ansible role to install Docker CE on AlmaLinux/Rocky/CentOS/Fedora/RHEL(Redhat)/Ubuntu/Debian/Mint/Raspbian
Stars: ✭ 73 (-97.51%)
Mutual labels:  debian, fedora
linux-installer
Universal GNU+Linux installer script
Stars: ✭ 16 (-99.45%)
Mutual labels:  debian, fedora

Pyflame: A Ptracing Profiler For Python

Build Status Docs Status COPR Status

(This project is deprecated and not maintained.)

Pyflame is a high performance profiling tool that generates flame graphs for Python. Pyflame is implemented in C++, and uses the Linux ptrace(2) system call to collect profiling information. It can take snapshots of the Python call stack without explicit instrumentation, meaning you can profile a program without modifying its source code. Pyflame is capable of profiling embedded Python interpreters like uWSGI. It fully supports profiling multi-threaded Python programs.

Pyflame usually introduces significantly less overhead than the builtin profile (or cProfile) modules, and emits richer profiling data. The profiling overhead is low enough that you can use it to profile live processes in production.

Full Documentation: https://pyflame.readthedocs.io

pyflame

Quickstart

Building And Installing

For Debian/Ubuntu, install the following:

# Install build dependencies on Debian or Ubuntu.
sudo apt-get install autoconf automake autotools-dev g++ pkg-config python-dev python3-dev libtool make

Once you have the build dependencies installed:

./autogen.sh
./configure
make

The make command will produce an executable at src/pyflame that you can run and use.

Optionally, if you have virtualenv installed, you can test the executable you produced using make check.

Using Pyflame

The full documentation for using Pyflame is here. But here's a quick guide:

# Attach to PID 12345 and profile it for 1 second
pyflame -p 12345

# Attach to PID 768 and profile it for 5 seconds, sampling every 0.01 seconds
pyflame -s 5 -r 0.01 -p 768

# Run py.test against tests/, emitting sample data to prof.txt
pyflame -o prof.txt -t py.test tests/

In all of these cases you will get flame graph data on stdout (or to a file if you used -o). This data is in the format expected by flamegraph.pl, which you can find here.

FAQ

The full FAQ is here.

What's The Deal With (idle) Time?

Full answer here. tl;dr: use the -x flag to suppress (idle) output.

What About These Ptrace Errors?

See here.

How Do I Profile Threaded Applications?

Use the --threads option.

Is There A Way To Just Dump Stack Traces?

Yes, use the -d option.

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].