Oort: Efficient Federated Learning via Guided Participant Selection
This repository contains scripts and instructions for reproducing the experiments in our OSDI '21 paper "Oort: Efficient Federated Learning via Guided Participant Selection".
If you have any questions or comments, please join our Slack channel.
Oort won the Distinguished Artifact Award at OSDI'2021!
This repo is outdated and no longer actively maintained. Instead, Oort has been merged as part of FedScale, a diverse set of challenging and realistic FL benchmark. Please try it!
Our install.sh
will install the following automatically:
Note: if you prefer different versions of conda and CUDA, please check comments in install.sh
for details.
Run the following commands to install Oort.
git clone https://github.com/SymbioticLab/Oort
cd Oort
source install.sh
The output of the experiment will validate the following major claims in our evaluation (section 7 in paper):
Please go to ./training
directory and follow the training README to run training scripts.
Please go to ./testing
directory and follow the testing README to run testing scripts.
Repo Root
|---- Oort # Oort code base.
|---- training
|---- evals # Submit/terminate training jobs
|---- configs # Configuration examples
|---- testing # Testing scripts
please consider to cite our paper if you use the code or data in your research project.
@inproceedings{Oort-osdi21,
title={Efficient Federated Learning via Guided Participant Selection},
author={Fan Lai and Xiangfeng Zhu and Harsha V. Madhyastha and Mosharaf Chowdhury},
booktitle={USENIX Symposium on Operating Systems Design and Implementation (OSDI)},
year={2021}
}
Thanks to Qihua Zhou for his Falcon repo.
Fan Lai ([email protected]) and Xiangfeng Zhu ([email protected])