Automatic resource and metadata tracking for information retrieval experiments.
Project description
TIREx Tracker
The TIREx tracker is a command line tool and API to automatically track resource usage, hardware specifications, and other metadata when running information retrieval experiments. It can be used easily in Python applications. For more information, refer to the project's readme.
Python API
First, install the TIREx tracker Python package from PyPI:
pip install tirex-tracker
Now, you can track the hardware metrics and metadata of your Python code by using the context manager:
from tirex_tracker import tracking
with tracking() as results:
# Do something...
print(results)
Alternatively, you can track the hardware metrics and metadata of a Python function by using the function decorator:
from tirex_tracker import tracked
@tracked
def do_something():
# Do something...
do_something()
print(do_something.results)
If you cannot use either the context manager or the function decorator from above, you can manually start and stop the tracking:
from tirex_tracker import start_tracking, stop_tracking
handle = start_tracking()
try:
# Do something...
finally:
results = stop_tracking(handle)
print(results)
Citation
If you find our work useful and reference or use it in a paper, please cite us.
@inproceedings{tirextracker2025,
author = {Hagen, Tim and Fr{\"o}be, Maik and Merker, Jan Heinrich and Scells, Harrisen and Hagen, Matthias and Potthast, Martin},
booktitle = {48th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR 2025)},
month = jul,
publisher = {ACM},
title = {{TIREx Tracker: The Information Retrieval Experiment Tracker}},
year = {2025}
}
You can also use the CITATION.cff to generate a citation in other formats.
License
The TIREx tracker code is licensed under the MIT License. If you use the TIREx tracker in your experiments, we would appreciate you citing our paper.
Abstract
The reproducibility and transparency of retrieval experiments heavily depends on properly provided information on the experimental setup and conditions. But as manually curating such experiment metadata can be tedious, error-prone, and inconsistent, metadata should be systematically collected in an automatic way—similar to the collection of Python and git-specific settings in the
ir_metadatareference implementation. To enable a platform-independent automatic metadata collection following their_metadataspecification, we introduce the TIREx tracker: a tool realized via a lightweight C binary, pre-compiled with all dependencies for all major platforms to track hardware configurations, usage of power/CPUs/RAM/GPUs, and experiment/system versions. The TIREx tracker seamlessly integrates into Python, Java, or C/C++ workflows and can be easily incorporated in run submissions of shared tasks, which we showcase for the TIRA/TIREx platform.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tirex_tracker-0.2.20.tar.gz.
File metadata
- Download URL: tirex_tracker-0.2.20.tar.gz
- Upload date:
- Size: 3.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d511b35c2bee07f73ac429784a00d0262f0c38cd167c9edd01610c96d83fd004
|
|
| MD5 |
c98ffac74d9aa341258efd5883001757
|
|
| BLAKE2b-256 |
db75a3d616bf6df52aac0659b5273ab04a5bde4725c25eb0e617ed53681af935
|
Provenance
The following attestation bundles were made for tirex_tracker-0.2.20.tar.gz:
Publisher:
ci.yml on tira-io/tirex-tracker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tirex_tracker-0.2.20.tar.gz -
Subject digest:
d511b35c2bee07f73ac429784a00d0262f0c38cd167c9edd01610c96d83fd004 - Sigstore transparency entry: 844586498
- Sigstore integration time:
-
Permalink:
tira-io/tirex-tracker@8fd85e881a2c0f36c4915a9a667c9d15cfed8530 -
Branch / Tag:
refs/tags/0.2.20 - Owner: https://github.com/tira-io
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@8fd85e881a2c0f36c4915a9a667c9d15cfed8530 -
Trigger Event:
push
-
Statement type:
File details
Details for the file tirex_tracker-0.2.20-py3-none-any.whl.
File metadata
- Download URL: tirex_tracker-0.2.20-py3-none-any.whl
- Upload date:
- Size: 3.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e03a0248af7161d10bf1ad65fb1482d3851a7be7941e9a2c6bf3cddf0ad4dfaa
|
|
| MD5 |
2d065814791d19c5e93a4ebdc7b94e72
|
|
| BLAKE2b-256 |
2c8195240be053955048ff9fe341279d18c8b41204f84bfab4b492cdbee9c1f7
|
Provenance
The following attestation bundles were made for tirex_tracker-0.2.20-py3-none-any.whl:
Publisher:
ci.yml on tira-io/tirex-tracker
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tirex_tracker-0.2.20-py3-none-any.whl -
Subject digest:
e03a0248af7161d10bf1ad65fb1482d3851a7be7941e9a2c6bf3cddf0ad4dfaa - Sigstore transparency entry: 844586499
- Sigstore integration time:
-
Permalink:
tira-io/tirex-tracker@8fd85e881a2c0f36c4915a9a667c9d15cfed8530 -
Branch / Tag:
refs/tags/0.2.20 - Owner: https://github.com/tira-io
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@8fd85e881a2c0f36c4915a9a667c9d15cfed8530 -
Trigger Event:
push
-
Statement type: