https://github.com/p403n1x87/flamegraph-experiment
Experiment for the paper "On the Algebraic Properties of Flame Graphs" https://arxiv.org/abs/2301.08941
https://github.com/p403n1x87/flamegraph-experiment
Last synced: 2 months ago
JSON representation
Experiment for the paper "On the Algebraic Properties of Flame Graphs" https://arxiv.org/abs/2301.08941
- Host: GitHub
- URL: https://github.com/p403n1x87/flamegraph-experiment
- Owner: P403n1x87
- Created: 2022-12-11T15:38:09.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-03-06T15:50:44.000Z (7 months ago)
- Last Synced: 2025-03-26T08:47:56.264Z (7 months ago)
- Language: Python
- Homepage:
- Size: 5.86 KB
- Stars: 2
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This repository contains the code for the experiment presented in the paper
"On the Algebraic Properties of Flame Graphs".## How to run the experiment
The experiment has been run with CPython 3.9 and Austin 3.4.1 (from the Snap
store) on Ubuntu 22.04. We recommend creating a virtual environment and
installing the dependencies with~~~console
pip install -r requirements.txt`
~~~The data can be collected by running the `collect_data.sh` bash script. The
samples will be saved in the `data` directory. The experiment can then be run
with~~~console
python experiment.py
~~~The output will contain the p-value and the Delta decomposition of the
difference of the average flame graph, with stacks filtered out as described in
the paper.This is the result we obtained with a run of the experiment
~~~
p-value: 1.1102230246251565e-16Δ+: {':_find_and_load:1007;:_find_and_load_unlocked:986;:_load_unlocked:680;:exec_module:850;:_call_with_frames_removed:228;/usr/lib/python3.9/site.py::605;/usr/lib/python3.9/site.py:main:598;/usr/lib/python3.9/site.py:execsitecustomize:537;:_find_and_load:1007;:_find_and_load_unlocked:986;:_load_unlocked:680;:exec_module:850;:_call_with_frames_removed:228;sitecustomize.py::5': 100297.26}
Δ-: {'/usr/lib/python3.9/runpy.py:_run_module_as_main:197;/usr/lib/python3.9/runpy.py:_run_code:87;main.py::19;main.py:c:15;main.py:b:10;main.py:a:6': 50009.46000000002}
~~~