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
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.tar.gz | 2.9 MB | Details |
Built distributions (wheels)
Total release size: 1.3 GB
Release files / dftracer_utils-0.0.14.tar.gz
| Download URL | dftracer_utils-0.0.14.tar.gz |
|---|---|
| Size | 2.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e83d87347ac553a7e3d42e2accf07a3210b942fae05ed07bf2799ddd56b40c57
|
|
BLAKE2b-256 checksum How to use checksums |
57652f92a64302c9a1f3241c9635fd079a50c10bfc3ca0986b43668e72fbc190
|
| 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-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
301f92f8fbdd2060513558a323b3dd52d43b3181db6cc8dc1a67ec3a00aa91b7
|
|
BLAKE2b-256 checksum How to use checksums |
2cc8f346c669cf3525f906aac08ebe50c5dc01cb1afef3aa651b70bde55c5310
|
| 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-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
247133b6f624b3ec4421cbdb5b1cf46ba6b54db4693ae60ed185917e7456a296
|
|
BLAKE2b-256 checksum How to use checksums |
11fc22597c8feba80ec4c69a48f6b3796bd60ba84c6cff38f7c27926def2d75e
|
| 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-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
cc57f768474ad55991fea8cc66b963db7427105ea73e9dae8794e0f30db14e5f
|
|
BLAKE2b-256 checksum How to use checksums |
4eaad1d5c64fdd608a23c1539aa565e282fcc5fd2dd16913bbb1bee2390e8ee0
|
| 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-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
1892169072b8c80f2484a353ff983e5c1ee72679dc8f8aa9703109391085ec27
|
|
BLAKE2b-256 checksum How to use checksums |
7e5133a751b44986d4aae2d93c9eecc01df9d702db894fadf4751172d44131bd
|
| 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-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
3f15fffedea6bfd877c1c880748c1d3f3b6b876ddd4c0782bdf12dd2a00166e0
|
|
BLAKE2b-256 checksum How to use checksums |
d6884cc08596b8fb45a619236559add1ead4cd0d5aacfc28195963bf08fc5097
|
| 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-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5a4513d8f77fc5cbe29e24d49f6dcec585328c2cceb2ea3379ffa1f38cfc0190
|
|
BLAKE2b-256 checksum How to use checksums |
13776c8ea1ee77613817b4a0161d797abf51e9065c58ebc9f3746d25f1a37887
|
| 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-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
de0870a179deff202b0e2ae885e18b45445064e34c73cc217e37d59be54cf387
|
|
BLAKE2b-256 checksum How to use checksums |
d0ba1a13d99b620d4c420ad07a8909aa1c5b4ad466a3dd1e23faf5a6785ea1ec
|
| 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-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
a6f24d3411e70719e9df2aca6f3ae0130089e7b958d29241ffbfffc0ea02366d
|
|
BLAKE2b-256 checksum How to use checksums |
3351977cf6205699b709c55e477293d6c37b45c59b1a9b5531fe772ee91138d4
|
| 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-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
31d32863d08097808de0320a72e4d61d3ff43fe40c1e6031587c58d1f4c461db
|
|
BLAKE2b-256 checksum How to use checksums |
4046e71ad49d1ad1dd29679d95315319b5c0870dd2f8415ab23256ea95233e85
|
| 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-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d61ae8bf2d35bf5578cfd6748fa77b6ed9bb722fb6ab9511e466c5aa7fe9f805
|
|
BLAKE2b-256 checksum How to use checksums |
178274be951d1d0fb83737ee919c4c61cc46b79b20247bb8d4df2e5c455a5c7d
|
| 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-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
e29d731a4bded078e1a3fe4c4d65a515a94041d46f428e9787bffceb65879208
|
|
BLAKE2b-256 checksum How to use checksums |
6bdb3d33f76fa57f57c0be57c5708dbce8ea87a1c195d7b439d681af6266a088
|
| 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-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
897ac38a4be898d84a871d4c0e61d242606db750c4ff24ed9d73cd9df9ca2ddf
|
|
BLAKE2b-256 checksum How to use checksums |
e87b148367b60c56ea3a2b266e61abdf002338a62fb215a5d21727b2630529f9
|
| 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-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
641cb5a2b7546c91b97961ca920bb834fc9813e0caa0c807bbe677a62a3bcfb7
|
|
BLAKE2b-256 checksum How to use checksums |
25564b0efb77777906f93bbcfe828d829aec0600cdf5519358e9195844e4d222
|
| 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-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
a165cc2a81fab2c887f433522dfd95dcf74d7233611fa8f5250b7bfdcb51be7d
|
|
BLAKE2b-256 checksum How to use checksums |
86b0de8dc26aa11d637ee042443ff83fd3a90d3bcbd7deb98037a91419f96fad
|
| 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-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b042b67e6d39319b1307017ade2e9c1901c03c13ce415e73a46264c94c86bcd4
|
|
BLAKE2b-256 checksum How to use checksums |
667b9d02d642b99f29c44636d5bf9c4fbae3db4b83542f5afd216a49320e1ebd
|
| 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-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.9 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
c04ec402c4f80af89cd05937776415ec816c66c1878f3cb6121f8bae8b979702
|
|
BLAKE2b-256 checksum How to use checksums |
12430c56bdbdc354133b087ebff7a0f55ef781f5539642d52b03ce392c1368a1
|
| 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-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.9 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
0b4077ec1137cff0ad517b1a9cfe1767a3cc025c89dec1e8f29bcc3232293bea
|
|
BLAKE2b-256 checksum How to use checksums |
b6c55d07367d924fa70d7901431bdca7445fabd445b7ead55aa3e7c5adb7bb47
|
| 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-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
946da5ce10761a88908d2c179477ec80b2e1caa70446739ba2e11fcd70b8236b
|
|
BLAKE2b-256 checksum How to use checksums |
64cac275a2674a62d20a1f852c0a6b6bd9d1cb62cc35ff517c08e30b41fc7fb9
|
| 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-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.14-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 73.7 MB |
| Tags | CPython 3.8 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
64900948ca4321e8bcd5f3500a478004811daf81e0a8b85e58c8bff9c13226dd
|
|
BLAKE2b-256 checksum How to use checksums |
7810f6a21b444dfbbb6dfbde25e0838af082762824644ac9cb802bc388724c1a
|
| 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-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.14-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 60.9 MB |
| Tags | CPython 3.8 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
85e6d319998176bd63f6e6dd5f5f906f937ce2164babedee9508072f2210cc38
|
|
BLAKE2b-256 checksum How to use checksums |
66eacce4a74572c1eb7ddade054691939a7f44b8bee73c6b6706fdd463c4c851
|
| 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-cp38-cp38-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.14-cp38-cp38-macosx_11_0_arm64.whl |
|---|---|
| Size | 45.7 MB |
| Tags | CPython 3.8 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
e0e59eb15be83ad03e114ab67c1f1f07c670e3a144992079431fc43cfcb8b709
|
|
BLAKE2b-256 checksum How to use checksums |
ebbe9358f8d3865645638af72fc8be8ef1b5e5314209bc0bb2caa1b77f6bcd8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|