Microbench
Microbench captures runtime and environment metadata for Python code to support performance benchmarking and reproducible computational analyses.
Key Features:
- Automated Metadata Capture: Automatically records execution time, software package versions, environment variables, hardware information (CPU and RAM usage), and Python version.
- Extensibility via plugins: Provides a plugin system to add custom metadata collection functionality.
- Reproducibility Support: Logs package versions and hardware specifications to aid replication of analyses across different systems and over time.
- Local and centralized storage: Stores captured metadata in a structured format to local files or a Redis database.
Scientific Applications:
- Computational systems biology: Addresses performance variability and reproducibility challenges across heterogeneous compute environments.
- Benchmarking and reproducibility analysis: Enables benchmarking of code execution and examination of environment metadata for reproducibility investigations.
Methodology:
Automatically capture comprehensive metadata during execution of Python functions via plugins and store the captured metadata in a structured format locally or in a Redis database.
Topics
Details
- License:
- MIT
- Cost:
- Free of charge
- Tool Type:
- library
- Operating Systems:
- Mac, Linux, Windows
- Programming Languages:
- Python
- Added:
- 2/17/2022
- Last Updated:
- 2/17/2022
Operations
Publications
Lubbock ALR, Lopez CF. <i>Microbench</i>: Automated metadata management for systems biology benchmarking and reproducibility in Python. Unknown Journal. 2021. doi:10.1101/2021.09.14.460317.
Downloads
- Source codehttps://github.com/alubbock/microbench/tags