diff --git a/results-v2/google-fl/cifar10/d-cliques/random-fc/non-iid/experiments.sh b/results-v2/google-fl/cifar10/d-cliques/random-fc/non-iid/experiments.sh index 74acba653f8f80d389ad764b7910a8c5fe755a7b..57762a7c9e1b39d7622b31e1e9b99dd6518835d2 100755 --- a/results-v2/google-fl/cifar10/d-cliques/random-fc/non-iid/experiments.sh +++ b/results-v2/google-fl/cifar10/d-cliques/random-fc/non-iid/experiments.sh @@ -30,10 +30,11 @@ for MS in 5 10 20; do simulate/algorithm/d_sgd.py \ --batch-size 20 \ --learning-momentum 0.9 \ - --learning-rate 0.002 | + --learning-rate 0.002 \ + --clique-gradient | simulate/logger.py \ --accuracy-logging-interval 10\ - --nb-processes 8 | + --nb-processes 4 | simulate/run.py \ --nb-epochs 100; done diff --git a/results-v2/google-fl/cifar10/d-cliques/random-ring/non-iid/experiments.sh b/results-v2/google-fl/cifar10/d-cliques/random-ring/non-iid/experiments.sh index 7a193cf7e70ebdf60e5e4568f19354c10f451c32..43f7d46556917dab6a00c9fa1e628f0226ab7bf2 100755 --- a/results-v2/google-fl/cifar10/d-cliques/random-ring/non-iid/experiments.sh +++ b/results-v2/google-fl/cifar10/d-cliques/random-ring/non-iid/experiments.sh @@ -30,10 +30,11 @@ for MS in 5 10 20; do simulate/algorithm/d_sgd.py \ --batch-size 20 \ --learning-momentum 0.9 \ - --learning-rate 0.002 | + --learning-rate 0.002 \ + --clique-gradient | simulate/logger.py \ --accuracy-logging-interval 10\ - --nb-processes 8 | + --nb-processes 4 | simulate/run.py \ --nb-epochs 100; done diff --git a/results-v2/google-fl/cifar10/fully-connected/non-iid/experiments.sh b/results-v2/google-fl/cifar10/fully-connected/non-iid/experiments.sh index 8b784e9b778344b32ecb8be33fe9080c4a91f108..e67f37598d2e8b2e0103abb82886f395291cd79d 100755 --- a/results-v2/google-fl/cifar10/fully-connected/non-iid/experiments.sh +++ b/results-v2/google-fl/cifar10/fully-connected/non-iid/experiments.sh @@ -30,6 +30,6 @@ simulate/algorithm/d_sgd.py \ --learning-rate 0.002 | simulate/logger.py \ --accuracy-logging-interval 10\ - --nb-processes 8 | + --nb-processes 4 | simulate/run.py \ --nb-epochs 100 diff --git a/results-v2/google-fl/mnist/d-cliques/random-fc/non-iid/experiments.sh b/results-v2/google-fl/mnist/d-cliques/random-fc/non-iid/experiments.sh new file mode 100755 index 0000000000000000000000000000000000000000..95771054c6c607a0860631b81ae59db748ef3a48 --- /dev/null +++ b/results-v2/google-fl/mnist/d-cliques/random-fc/non-iid/experiments.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# Path to current script +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" +TOOLS=$SCRIPT_DIR/../../../../../$(cat $SCRIPT_DIR/../../../../../toolspath); cd $TOOLS + +# Add current working directory to executable namespace +export PATH=$PATH:$TOOLS +# Setup root directory for resolution of imports: +# the path of all local python libraries are relative to this +export PYTHONPATH=$TOOLS + +# Each command outputs the run directory, which is then used +# by the next command to add parameters and generate information +# used by the simulator. For a list of available options for each +# command, run 'export PYTHONPATH=.; <command> --help'. +for MS in 5 10 20; do + setup/meta.py \ + --results-directory $SCRIPT_DIR/all \ + --seed 1 | + setup/dataset.py \ + --name mnist | + setup/nodes/google-fl.py \ + --nb-nodes 100 \ + --local-shards 2 \ + --shard-size 250 | + setup/topology/d_cliques/random-cliques.py \ + --interclique fully-connected \ + --max-clique-size $MS | + setup/model/linear.py | + simulate/algorithm/d_sgd.py \ + --batch-size 125 \ + --learning-momentum 0.0 \ + --learning-rate 0.1 \ + --clique-gradient | + simulate/logger.py \ + --accuracy-logging-interval 10\ + --nb-processes 2 | + simulate/run.py \ + --nb-epochs 100; +done diff --git a/results-v2/google-fl/mnist/d-cliques/random-ring/non-iid/experiments.sh b/results-v2/google-fl/mnist/d-cliques/random-ring/non-iid/experiments.sh new file mode 100755 index 0000000000000000000000000000000000000000..3014c6fc20abb831f28ccf159e0328247422cedf --- /dev/null +++ b/results-v2/google-fl/mnist/d-cliques/random-ring/non-iid/experiments.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# Path to current script +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" +TOOLS=$SCRIPT_DIR/../../../../../$(cat $SCRIPT_DIR/../../../../../toolspath); cd $TOOLS + +# Add current working directory to executable namespace +export PATH=$PATH:$TOOLS +# Setup root directory for resolution of imports: +# the path of all local python libraries are relative to this +export PYTHONPATH=$TOOLS + +# Each command outputs the run directory, which is then used +# by the next command to add parameters and generate information +# used by the simulator. For a list of available options for each +# command, run 'export PYTHONPATH=.; <command> --help'. +for MS in 5 10 20; do + setup/meta.py \ + --results-directory $SCRIPT_DIR/all \ + --seed 1 | + setup/dataset.py \ + --name mnist | + setup/nodes/google-fl.py \ + --nb-nodes 100 \ + --local-shards 2 \ + --shard-size 250 | + setup/topology/d_cliques/random-cliques.py \ + --interclique ring \ + --max-clique-size $MS | + setup/model/linear.py | + simulate/algorithm/d_sgd.py \ + --batch-size 125 \ + --learning-momentum 0.0 \ + --learning-rate 0.1 \ + --clique-gradient | + simulate/logger.py \ + --accuracy-logging-interval 10\ + --nb-processes 2 | + simulate/run.py \ + --nb-epochs 100; +done