This release is a pre-release and may not be stable for production use.
dftracer-utils
Tools for reading, indexing, querying and analyzing DFTracer traces: a Python query API over a SIMD columnar DataFrame engine, a plugin ABI for analyses that ride the scan, and the CLI utilities around them.
Quickstart
pip install dftracer-utils
from dftracer.utils import TraceViewer
view = TraceViewer("traces/") # a directory of .pfw / .pfw.gz files
df = (
view.filter('cat == "POSIX"')
.group_by("name")
.agg("count", "sum:dur", "max:dur")
.collect() # runs the plan, returns a DataFrame
)
print(df.sort_values("sum_dur", ascending=False).head(3).to_pandas())
name count sum_dur max_dur
0 pread 16 280 22
1 read 13 244 25
2 fread 8 156 24
The frame is the engine's own DataFrame: the pandas and polars spellings
work on it (import dftracer.utils.pandas as pd), and .to_pandas() /
.to_arrow() hand the buffers over without a copy.
Documentation
Full documentation is available at Read the Docs:
- Getting started: install, first query, first pipeline, first plugin.
- Guides: task recipes, the pandas and polars surfaces, plans, joins, the memory budget, performance.
- API reference and the C ABI.
- Plugins: analyses that ride the fused scan.
To build documentation locally:
pip install .
cd docs
pip install -r requirements.txt
make html
See docs/README.md for detailed documentation building instructions.
Building
Prerequisites
- CMake 3.20 or higher
- C++20 compatible compiler (GCC 12 or later, Clang 14 or later)
- zlib development library
- pkg-config
Build
cmake --preset release
cmake --build --preset release
Installation
cmake --preset release -DCMAKE_INSTALL_PREFIX=<LOCATION>
cmake --build --preset release
cmake --install build/build-release
Developers Guide
Please see Developers Guide for more information how to test, run coverage, etc.
Citation
If you use this software, please cite:
Ray A. O. Sinurat, William Nixon, Haryadi S. Gunawi, Nikoli Dryden, and Hariharan Devarajan. 2026. HORATIO: Bridging Management and Analysis of Traces at Scale. In The International Conference on Scalable Scientific Data Management 2026 (SSDBM 2026), August 11-13, 2026, San Diego, CA, USA. ACM, New York, NY, USA. doi:10.1145/3828820.3828825
@inproceedings{sinurat2026horatio,
author = {Sinurat, Ray A. O. and Nixon, William and Gunawi, Haryadi S. and Dryden, Nikoli and Devarajan, Hariharan},
title = {HORATIO: Bridging Management and Analysis of Traces at Scale},
year = {2026},
isbn = {979-8-4007-2708-5},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
doi = {10.1145/3828820.3828825},
booktitle = {The International Conference on Scalable Scientific Data Management 2026 (SSDBM 2026)},
location = {San Diego, CA, USA},
series = {SSDBM 2026},
}
License
dftracer-utils is distributed under the terms of the MIT license. All new contributions must be made under this license.
See LICENSE and NOTICE for details.
SPDX-License-Identifier: MIT
LLNL-CODE-2024514 — Applied Storage Research (ASR)
Metadata
Release files for dftracer-utils 0.0.14.post6.dev0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dftracer_utils-0.0.14.post6.dev0.tar.gz | 3.0 MB | Details |
Built distributions (wheels)
Total release size: 1.3 GB
Release files / dftracer_utils-0.0.14.post6.dev0.tar.gz
| Download URL | dftracer_utils-0.0.14.post6.dev0.tar.gz |
|---|---|
| Size | 3.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6c2a0b4b873f00488d1eb0215bafbd771060a94889543bfc7b4306cbcfc26088
|
|
BLAKE2b-256 checksum How to use checksums |
ea6a2f96f14639470a1573fbccbacf70fb4a00e4985ca8427eda96788359225e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
bae70dc4e8f59af8cfb7e272b84d86591532e76ae867be2619e37f749ce1f97b
|
|
BLAKE2b-256 checksum How to use checksums |
95c7c7af0b4f7d2d7c9a7ef49fcaabdeb9b3619734f3d7911cea1eb202f2e5da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c9ada036a0f2f51e32b53ba76cadb9e6fdc7c37ffafa5d208b7aef4b4f678f81
|
|
BLAKE2b-256 checksum How to use checksums |
ba42210f73236a97cf48a1c7afdb28b22734b415cf80266fbec1cc1012ecb236
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ef52041231f179a60ab75557b3b85bd9dab2feef9dfb807e59b04d07fc0bf5a3
|
|
BLAKE2b-256 checksum How to use checksums |
d4889680935f717b6a37cc438d4704bb223f2b8b25823e04234ea1412253f567
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
dbf507876514f2732b3149a8d6a63bdbb5cc5929310d3108e117eba032f6321b
|
|
BLAKE2b-256 checksum How to use checksums |
8c2b8a5c1b2816675e585d8d6a096d30e02ec4165170c5d657541c2dd5de0b23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
7e3ebc3b56ad552ef5b27017ac626981cdc4e73fcd90f705a769ad8aa8696615
|
|
BLAKE2b-256 checksum How to use checksums |
d97f5eedc00379be4ed2fc46760d2bf5900a33a284378bfe7dabcb9d59131a27
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
0c52ca80f0eb9e3e82a1bbad262b52b9b5df24747c4b84e66681f0ef365e1118
|
|
BLAKE2b-256 checksum How to use checksums |
38eaa1dad8de4be47f7baf6ee0909bbd535be6f2d3dbe9f6ad40f9e2868023ab
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
34f070c78e73a1f4ccefb04942aa011bd92105b2fcf99995f7af1457f34c5617
|
|
BLAKE2b-256 checksum How to use checksums |
a95ec08d861e88146116551b7d63a0f48e3ffea142c225970beb0207c20274b6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
09339ef863c59c3762f3e041352e006886a3115c80f7684ae73bbe645ed55f35
|
|
BLAKE2b-256 checksum How to use checksums |
89e8114006451a8fd7842a995847530eaf63a625aefae1a814e4cba424c978ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
32df297bd310276931b90a07cbae440b01a1af0c1c34235f52192ecb94c32472
|
|
BLAKE2b-256 checksum How to use checksums |
bf6c829b407ff421738188c03f05440f858d419531831bde59fa68ce47d2d607
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
be733991fab0d99ec24a2851f33beb5e40cf1917a94a89814200d166f9099bbf
|
|
BLAKE2b-256 checksum How to use checksums |
ee7a1de11ef112f917ffaabbdddae3eb613c2b2c2afcbb2be8514e092f8b04d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
610a69f71ed2b4fba22505210d0212a77f6444cf0adc2c0f8b28d8e67ceba960
|
|
BLAKE2b-256 checksum How to use checksums |
935cc82f31937a9780fdd7f8fc4dcce3912a198e0c0584f021089639b3909e30
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
79cd2d1b0f915e76db550494f6efd8f312584d06760adb73140c5bf251a2e2c0
|
|
BLAKE2b-256 checksum How to use checksums |
d08860360e4728c55017117b9997a78ac43ccbfb3ba88272977173b5e33d6997
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
10cea046de18a28e847fe458ce5fcc2deeb5ba9e9abc5d2f1c64708de84dde22
|
|
BLAKE2b-256 checksum How to use checksums |
593b2994554087c2d7a041d63a4866b45e7a847eb80b8141ded693743b672da9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
bc20c908d85f184c2cbcf56f9ce5a6ce3c445f25d31baf1f972aa0986ffdeb41
|
|
BLAKE2b-256 checksum How to use checksums |
cfb697c6bf101f8563ef3163d52227b2ef2c83cd2a5a53a4cab64a24a33316a4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c0f0fa4e00c8d6040470fc6319b3feb786fe50a09286a32a47002720e2754516
|
|
BLAKE2b-256 checksum How to use checksums |
d406d824417e285e8b6f797a1d872d4d2bf50260d7a94c7b3ce896ebe21e7c2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
c3daab1593973d32b8338452b65a7170f892986aea2ad1c7de6213e02e9de1e4
|
|
BLAKE2b-256 checksum How to use checksums |
8c16961233263f549db6e6c3fe11618c097e42d5f9d78de8d794842f8e549353
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.9 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
00fb91026c62a02e32cc1738a5d16abe009d31f467343e85403a374137165696
|
|
BLAKE2b-256 checksum How to use checksums |
3a4d68c46b45e20bbe9be50154bf9b2d8253eaffb0d87e09cd95739494425bcf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
45a4cdbbd2b3d6c040437fc6f772d4d01bd090cea4d1071649fcb474a9e9b49c
|
|
BLAKE2b-256 checksum How to use checksums |
b7bb1a369e90d4de2f03b1ab5a5d2a4283ff02cda08964f78c8296bfbce63b13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 74.4 MB |
| Tags | CPython 3.8 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
de634c3c7deac26b43d6772b0d5ac47a9b6bd7aa6260c7aeb01ad3d94baf89db
|
|
BLAKE2b-256 checksum How to use checksums |
fab4de07df1ceafc8e7ed7668da22bb91e98851bd7085acad7a6a9e9cc231e15
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 61.5 MB |
| Tags | CPython 3.8 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
2444ae33ffc93c6498d378addfdd28c3ad76ba9bd3f3432384431659268ac381
|
|
BLAKE2b-256 checksum How to use checksums |
6ade42c3e807d74fccb12a45a4b9a6c7ec1b3914088a5dd76cee8c0a6d32b220
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / dftracer_utils-0.0.14.post6.dev0-cp38-cp38-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14.post6.dev0-cp38-cp38-macosx_11_0_arm64.whl |
|---|---|
| Size | 46.4 MB |
| Tags | CPython 3.8 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
4ad6870dbb30865056bee0b69012d9daed73f180e084bddd178517d1c4ae5992
|
|
BLAKE2b-256 checksum How to use checksums |
ce7821845271d1623f6da0660e672a67d113cfec0e55f5e353614b295ab28d92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|