Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a artificial metric of training time #340

Open
arthurPignet opened this issue Apr 20, 2021 · 0 comments
Open

Add a artificial metric of training time #340

arthurPignet opened this issue Apr 20, 2021 · 0 comments
Labels
enhancement New feature or request help wanted Extra attention is needed nice_to_have optimization An optimization of something that works

Comments

@arthurPignet
Copy link
Collaborator

arthurPignet commented Apr 20, 2021

With the current implementations of the various mpls, the computational time is not at all related to a true federated scenario, for two main reasons:

  • the partners cannot train in parallel.
  • there is no communication between the "central server" or the partners.

I think it's in fact possible to compute a approximation of the federated training time of a scenario, by taking into account the parallelism of the local training and the communication time cost

the time of a global batch would be the max of the actual time for each sequential local training for this global batch)

$t_{global batch i} = max_p \sum_{local batch j in global batch i for partner p} t_{local batch j}$

The communication time would be an arbitrary "communication time" multiplied by the number of communication, which is algorithm dependent. For fedavg, it would be equal to the number of globalbatch/minibatch for the training, + the ones needed for the initialization/test (which can maybe be neglected ?)

With the model the amount of data exchanged is not really taking into account, I don't know if it's mandatory

  • What do you think about this idea/model ?
@bowni bowni added this to Backlog in Experiments May 11, 2021
@bowni bowni added this to Backlog in Code quality & usability May 11, 2021
@bowni bowni added help wanted Extra attention is needed nice_to_have optimization An optimization of something that works enhancement New feature or request labels May 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request help wanted Extra attention is needed nice_to_have optimization An optimization of something that works
Development

No branches or pull requests

2 participants