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 11+, Clang 14+)
- zlib development library
- pkg-config
Build
mkdir build && cd build
cmake ..
make
Installation
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=<LOCATION>
make
make install
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.13
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.13.tar.gz | 2.1 MB | Details |
Built distributions (wheels)
Total release size: 1.1 GB
Release files / dftracer_utils-0.0.13.tar.gz
| Download URL | dftracer_utils-0.0.13.tar.gz |
|---|---|
| Size | 2.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c978b29a9cf16c7a08cb98600fd1dbe75945f6b74ad9bd4a9fabcc0fb89d2f31
|
|
BLAKE2b-256 checksum How to use checksums |
ccde186d393e88b86f753b8fa493b0fc735e55220de0b031785426c28e5ca78b
|
| 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.13-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
38eac9058ce1f00d30d5b13c6e9efb5b191cf31a44df7cb5c0cfbc57bb7a074c
|
|
BLAKE2b-256 checksum How to use checksums |
c7030ab30ccb7b100d96eb6ef3d629a572c41c52166a73edfca5520e41041911
|
| 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.13-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
9ecc2c25d6572b4c77531bf68af2a01ea16460f2201d7eafcdcff4685867ec13
|
|
BLAKE2b-256 checksum How to use checksums |
67624dfc05e33fc1f68c7abd76f70078d353dc20518bab4be59ff0a58e127873
|
| 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.13-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
21c213e6e809bd6f9dcd5e8daba993e73255d11b232a31e9fa71c0853cf1426d
|
|
BLAKE2b-256 checksum How to use checksums |
b10611f26f56f9aeee15df68b398d19bcac3daa2f47dda3fa80e8f3e2c5b0b1b
|
| 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.13-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
0cb12ae80a444a073e4f149a25373c5a42d61730b4e15cab64d6f446a4f17d2b
|
|
BLAKE2b-256 checksum How to use checksums |
e76e4ccaefaac73db29d2e3733b6b44f1ccf8760a209155aa7d25756b07fcb49
|
| 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.13-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
9f2b544ba62ad9e108531708917561d89e116d4ed95d6330920da25c51b5e4bc
|
|
BLAKE2b-256 checksum How to use checksums |
f82807fabc7f7c9b3d2e316b9f5ee334d1ebd2ba1162bfdb05ec16d3c174c691
|
| 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.13-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
88bda649daafa025463fd9df7383e7e45848dfe52f71ecd2329295395fe99886
|
|
BLAKE2b-256 checksum How to use checksums |
891b40104928a935871602489c1ece65b424b5129295a7fc9cf9096887fd2225
|
| 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.13-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
ac194c9adef211aaf2bdd4b8ff65e72433c0c78f1f43287809437783a0a6fb15
|
|
BLAKE2b-256 checksum How to use checksums |
a4e88626004230ea0297edb6a7354ac89965ba192cb6364111a0fc03cd4ccc3d
|
| 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.13-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
cb592c76488069707408400524da16930b80fa56447e6ac38df97808d3afc65e
|
|
BLAKE2b-256 checksum How to use checksums |
62260944c76d9f91c39342ac2029e7f19912ffae53dc625f23cf09ac8520252c
|
| 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.13-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b41e44fa0fd2f457482d7ca7442a33fee75e2050c451e8a928da85f9ea3a0a26
|
|
BLAKE2b-256 checksum How to use checksums |
f8e4c90bde5222adc3731d496b3e4d562981ae262ee7a8ad3ebebd273c3ef783
|
| 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.13-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
d07d5c8ac1f2fde61ec55e18d41b43ce05bf6aeb1ed52457de8880589c7cc53b
|
|
BLAKE2b-256 checksum How to use checksums |
5bb26dee7af4a6e3eacae9f7800378144a73be576188e88a5e8cc777878360b4
|
| 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.13-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
3570a61f28b1aa4b07ca21eeeef4c5306f651609ab44314a923150a5f839fe38
|
|
BLAKE2b-256 checksum How to use checksums |
367697930f020cf1ab2710dccd027a33d408869c782bb017e22396f6264b6749
|
| 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.13-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
72952ad9032e84f2738aa51bf08f78ae624de362b3d84cacbb3188f4ad22bb89
|
|
BLAKE2b-256 checksum How to use checksums |
5819ba6f70c9d1790640ff3923d9a780ab1896674970112ca302b026362eb7eb
|
| 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.13-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
6c05bc0db8c49227a99147c395b37e077b80ce1c630fe69c4aae6ee4711ee248
|
|
BLAKE2b-256 checksum How to use checksums |
cfd35fd9849df75258af90bcf7eb082c7d0d8176e3541a1e76d3f20036079073
|
| 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.13-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
63ddf28c29ed6011bb5494ac12ddf3edebc71e9f4d12352208d02d183a7a38e2
|
|
BLAKE2b-256 checksum How to use checksums |
4046b4a7f02f0ea9414339b44ec52d98efd144dc3875c251f46c7f9da0c38130
|
| 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.13-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f9aa5c8216f77170280cb86bcf9b99c96a4da021f80680354ffb22616bdb2edd
|
|
BLAKE2b-256 checksum How to use checksums |
a0c8d1648a7c7b1c5516ebb6927a3118bd01107dbfa53d4d7562d7b753b9ff35
|
| 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.13-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
aa86c6595f95772366975ed6ae078b6f671f1be85c49c63e0ffbe87af56c074b
|
|
BLAKE2b-256 checksum How to use checksums |
97b1a7b12613e55d1bf3b7a1dc3a37e26b62229cd57fd86d05858a7502f8d381
|
| 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.13-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp39-cp39-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.9 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
8db4159a546557f97cb6a74c6352565056600174bc2dd4a28f19976c74bd3df3
|
|
BLAKE2b-256 checksum How to use checksums |
7b81803bc499b12cb550a53b2f6b384471e05c807978eb742b8a580faaeb50f2
|
| 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.13-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
63890ae6156185b756b01569e030b0095578a554d960fe2598b2bd87e98f44b2
|
|
BLAKE2b-256 checksum How to use checksums |
682c11564f99ae7655e45a2ef41ada29f149dd20c03bcc08967871f6a71b0fa5
|
| 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.13-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | dftracer_utils-0.0.13-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 62.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 |
0058b1468523b954b35c73e4ff52d41a66179d1b7e2eba956c1f9e808e68ab50
|
|
BLAKE2b-256 checksum How to use checksums |
f9568115453f2e85c94d3806d6ea2f761e6436a34ebc3f38f8caf8c3b21bc6be
|
| 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.13-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | dftracer_utils-0.0.13-cp38-cp38-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 55.8 MB |
| Tags | CPython 3.8 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
3047109a03b0b0a3464b484078b30f7e3843ef5f039fad41316705c09068d85b
|
|
BLAKE2b-256 checksum How to use checksums |
82160527c4bd5cb76aa2c65df8ea7316cbd9afa20f49e3d03b9d147dade6f383
|
| 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.13-cp38-cp38-macosx_11_0_arm64.whl
| Download URL | dftracer_utils-0.0.13-cp38-cp38-macosx_11_0_arm64.whl |
|---|---|
| Size | 32.3 MB |
| Tags | CPython 3.8 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ee0016ea9ca37aa3732a5794bb1cdbf666994d19f8fb55ee01da1fbfd129a4db
|
|
BLAKE2b-256 checksum How to use checksums |
e2afcea40e876de022bdcef53372d232a5a338a22ff18a6404115f879066d040
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|