Skip to content

Releases: TyMill/EcoFL

EcoFL v0.1.0 — Initial Research Release

Choose a tag to compare

@TyMill TyMill released this 20 May 17:58
5160545

EcoFL v0.1.0 — Initial Research Release

This is the initial public research release of EcoFL (Energy-Conscious Federated Learning), a reproducible benchmarking framework for evaluating energy-aware federated learning on resource-constrained IoT edge devices.

EcoFL accompanies the manuscript:

“Can Federated Learning Go Green? EcoFL: A System-Level Energy-Aware Benchmark for IoT Edge Intelligence”

Main features

  • Modular benchmarking framework for lightweight federated learning experiments.
  • Support for three learning configurations:
    • centralized training,
    • standard federated learning using fixed-round FedAvg,
    • EcoFL energy-aware federated learning with adaptive round termination.
  • Implementation of five lightweight model families:
    • Logistic Regression,
    • Random Forest,
    • XGBoost,
    • Multilayer Perceptron,
    • Isolation Forest.
  • Synthetic IoT anomaly detection dataset generator with:
    • 50,000 samples,
    • 12 telemetry-inspired features,
    • configurable anomaly rate,
    • label noise,
    • Dirichlet-based non-IID client partitioning.
  • TDP-based computation-side energy estimation using CPU utilization and training duration.
  • System-level profiling of:
    • estimated training energy,
    • communication overhead,
    • inference latency,
    • process-level memory usage,
    • federated round counts.
  • Reproducible experiments across five independent random seeds.
  • Scheduler ablation study for convergence tolerance, patience, and CPU threshold.
  • Statistical testing utilities based on Wilcoxon signed-rank tests and bootstrap confidence intervals.
  • Figure and result generation scripts for reproducing the manuscript tables and plots.

Repository contents

This release includes:

  • ecofl/ — core Python package,
  • experiments/ — scripts for running the main benchmark, ablation study, statistical tests, and visualizations,
  • results/ — aggregated results and experiment outputs,
  • tests/ — minimal validation tests,
  • README.md — installation and reproduction instructions,
  • requirements.txt and environment.yml — environment specifications,
  • pyproject.toml — package metadata,
  • CITATION.cff — citation metadata,
  • .zenodo.json — Zenodo metadata,
  • reproduce.sh — convenience script for reproducing the benchmark workflow.

Reproducibility

The main experimental workflow can be reproduced with:

pip install -r requirements.txt
bash reproduce.sh

or step by step:

python experiments/run_experiments.py
python experiments/statistical_tests.py
python experiments/ablation_study.py
python experiments/visualize_results.py

The default configuration uses five independent seeds: 42, 43, 44, 45, 46.

Notes

This release is intended as a reproducible research companion for the EcoFL manuscript. The reported energy values are based on a TDP-based software profiling model and should be interpreted as computation-side energy estimates rather than direct physical power measurements. Future versions will extend EcoFL with physical hardware validation, wireless communication energy models, and additional real-world IoT datasets.

License

Released under the MIT License.

Recommended citation

Please cite this Zenodo release and the accompanying manuscript when using EcoFL in scientific work.