Skip to main content

Automatic resource and metadata tracking for information retrieval experiments.

Project description

TIREx Tracker

CI Maintenance Code coverage
Release Ubuntu macOS Windows
PyPi Python Downloads
Issues Commit activity License

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_metadata reference implementation. To enable a platform-independent automatic metadata collection following the ir_metadata specification, 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tirex_tracker-0.2.20.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tirex_tracker-0.2.20-py3-none-any.whl (3.1 MB view details)

Uploaded Python 3

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

Hashes for tirex_tracker-0.2.20.tar.gz
Algorithm Hash digest
SHA256 d511b35c2bee07f73ac429784a00d0262f0c38cd167c9edd01610c96d83fd004
MD5 c98ffac74d9aa341258efd5883001757
BLAKE2b-256 db75a3d616bf6df52aac0659b5273ab04a5bde4725c25eb0e617ed53681af935

See more details on using hashes here.

Provenance

The following attestation bundles were made for tirex_tracker-0.2.20.tar.gz:

Publisher: ci.yml on tira-io/tirex-tracker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for tirex_tracker-0.2.20-py3-none-any.whl
Algorithm Hash digest
SHA256 e03a0248af7161d10bf1ad65fb1482d3851a7be7941e9a2c6bf3cddf0ad4dfaa
MD5 2d065814791d19c5e93a4ebdc7b94e72
BLAKE2b-256 2c8195240be053955048ff9fe341279d18c8b41204f84bfab4b492cdbee9c1f7

See more details on using hashes here.

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

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page