Metadata-Version: 2.1
Name: insdc-benchmarking-scripts
Version: 0.1.9
Summary: Benchmarking scripts for INSDC data transfers
License: Apache-2.0
Keywords: INSDC,benchmark,ENA,SRA,FTP,HTTP
Author: Australian BioCommons
Author-email: guerdon@biocommons.org.au
Requires-Python: >=3.9,<4.0
Classifier: Environment :: Console
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Internet
Requires-Dist: certifi (>=2025.10.5,<2026.0.0)
Requires-Dist: click (>=8.1.0,<9.0.0)
Requires-Dist: insdc-benchmarking-schema (>=1.2.0,<2.0.0)
Requires-Dist: psutil (>=5.9.0,<6.0.0)
Requires-Dist: pyyaml (>=6.0.0,<7.0.0)
Requires-Dist: requests (>=2.31.0,<3.0.0)
Description-Content-Type: text/markdown

# INSDC Benchmarking Scripts

Benchmarking tools for measuring **INSDC data download performance** across repositories (**ENA**, **SRA**, **DDBJ**) using multiple transfer protocols.

---

## 🚀 Installation

```bash

pip install insdc-benchmarking-scripts
```
⚙️ Quick Start

Copy and edit the example config:

```bash
cp config.yaml.example config.yaml
```
Run an HTTP benchmark:

```bash
benchmark-http --dataset SRR000001 --repository ENA --site nci
```
Run an FTP benchmark:

```bash
benchmark-ftp --dataset SRR000001 --repository ENA --site nci
```
🧠 Features

-   HTTP/HTTPS and FTP benchmarking

-   Automatic CPU, memory, and disk metrics

-   Network latency baselines (ping/traceroute)

-   JSON output aligned with INSDC Benchmarking Schema v1.2

-   Optional API submission via secure HTTP POST

📊 Example Output

```json

{

  "timestamp": "2025-11-06T06:21:33Z",

  "protocol": "http",

  "repository": "SRA",

  "dataset_id": "DRR000001",

  "duration_sec": 92.3,

  "average_speed_mbps": 51.6,

  "status": "success"

}
```
📚 Documentation

Full documentation and examples are available at:

👉 https://github.com/AustralianBioCommons/insdc-benchmarking-scripts

Maintained by: Australian BioCommons

📍 University of Melbourne

🪪 Licensed under Apache 2.0

