Pulling request for FlexLoRA to FS #892
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: UnitTests for Distributed Mode | |
on: | |
pull_request: | |
types: [opened, synchronize, edited] | |
jobs: | |
run: | |
if: false == contains(github.event.pull_request.title, 'WIP') | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 20 | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
python-version: ['3.9'] | |
torch-version: ['1.10.1'] | |
torchvision-version: ['0.11.2'] | |
torchaudio-version: ['0.10.1'] | |
env: | |
OS: ${{ matrix.os }} | |
PYTHON: '3.9' | |
steps: | |
- uses: actions/checkout@master | |
- name: Setup Python ${{ matrix.python-version }} | |
uses: actions/setup-python@master | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install PyTorch ${{ matrix.torch-version }}+cpu | |
run: | | |
pip install numpy typing-extensions dataclasses | |
pip install torch==${{ matrix.torch-version}}+cpu torchvision==${{matrix.torchvision-version}}+cpu torchaudio==${{matrix.torchaudio-version}}+cpu -f https://download.pytorch.org/whl/torch_stable.html | |
- name: Install FS | |
run: | | |
pip install -e .[test] | |
- name: Test Distributed (LR on toy with a unified files) | |
run: | | |
python scripts/distributed_scripts/gen_data.py | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_server_no_data.yaml distribute.grpc_compression gzip & | |
sleep 2 | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_client_1.yaml distribute.grpc_compression gzip & | |
sleep 2 | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_client_2.yaml distribute.grpc_compression gzip & | |
sleep 2 | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_client_3.yaml distribute.grpc_compression gzip | |
[ $? -eq 1 ] && exit 1 || echo "Passed" | |
- name: Test Distributed (LR on toy with multiple files) | |
run: | | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_server.yaml data.file_path 'toy_data/server_data' distribute.data_idx -1 & | |
sleep 2 | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_client_1.yaml data.file_path 'toy_data/client_1_data' distribute.data_idx -1 & | |
sleep 2 | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_client_2.yaml data.file_path 'toy_data/client_2_data' distribute.data_idx -1 & | |
sleep 2 | |
python federatedscope/main.py --cfg scripts/distributed_scripts/distributed_configs/distributed_client_3.yaml data.file_path 'toy_data/client_3_data' distribute.data_idx -1 |