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

Validation Batch size #1645

Closed
jaideep11061982 opened this issue Jun 7, 2022 · 4 comments
Closed

Validation Batch size #1645

jaideep11061982 opened this issue Jun 7, 2022 · 4 comments
Assignees

Comments

@jaideep11061982
Copy link

I find that the validation set is evaluated image/image which takes lot of time. I even specifiy the samples per gpu as 32.

data = dict(
samples_per_gpu=32,
workers_per_gpu=4,

runner = dict(type='IterBasedRunner', max_iters=int(total_iters * 1000))

@jaideep11061982
Copy link
Author

evaluates image by image by looking at the progress bar of evaluation it appears to be.

@MengzhangLI
Copy link
Contributor

Because samples_per_gpu only works for model training, and the default setting of samples_per_gpu is 1 in mmseg when model testing and validation (DO NOT support batch inference yet).

So if you want to speed up right now, you could only use more GPU training/testing.

@MengzhangLI MengzhangLI self-assigned this Jun 8, 2022
@jaideep11061982
Copy link
Author

jaideep11061982 commented Jun 8, 2022

@MengzhangLI thanku
what is difference between Iter based runner and Epoch based .
If i want to run for say 9 epochs , then how many iterations should i give is it like this (ds length/sampler_per_gpu) * no of epochs ?

@MengzhangLI
Copy link
Contributor

MengzhangLI commented Jun 8, 2022

You can calculate it by relationship iterations = epochs * total batchsize.

Ref: https://discuss.pytorch.org/t/epochs-iterations-batch-size-do-not-match/25127

aravind-h-v pushed a commit to aravind-h-v/mmsegmentation that referenced this issue Mar 27, 2023
Allow k pipeline to generate > 1 images.
xiexinch added a commit that referenced this issue Jul 20, 2023
Thanks for your contribution and we appreciate it a lot. The following
instructions would make your pull request more healthy and more easily
get feedback. If you do not understand some items, don't worry, just
make the pull request and seek help from maintainers.

## Motivation

#3181
#2965
#2644
#1645
#1444
#1370
#125

## Modification

Remove the assertion at data_preprocessor

## BC-breaking (Optional)

Does the modification introduce changes that break the
backward-compatibility of the downstream repos?
If so, please describe how it breaks the compatibility and how the
downstream projects should modify their code to keep compatibility with
this PR.

## Use cases (Optional)

If this PR introduces a new feature, it is better to list some use cases
here, and update the documentation.

## Checklist

1. Pre-commit or other linting tools are used to fix the potential lint
issues.
2. The modification is covered by complete unit tests. If not, please
add more unit test to ensure the correctness.
3. If the modification has potential influence on downstream projects,
this PR should be tested with downstream projects, like MMDet or
MMDet3D.
4. The documentation has been modified accordingly, like docstring or
example tutorials.
nahidnazifi87 pushed a commit to nahidnazifi87/mmsegmentation_playground that referenced this issue Apr 5, 2024
Thanks for your contribution and we appreciate it a lot. The following
instructions would make your pull request more healthy and more easily
get feedback. If you do not understand some items, don't worry, just
make the pull request and seek help from maintainers.

## Motivation

open-mmlab#3181
open-mmlab#2965
open-mmlab#2644
open-mmlab#1645
open-mmlab#1444
open-mmlab#1370
open-mmlab#125

## Modification

Remove the assertion at data_preprocessor

## BC-breaking (Optional)

Does the modification introduce changes that break the
backward-compatibility of the downstream repos?
If so, please describe how it breaks the compatibility and how the
downstream projects should modify their code to keep compatibility with
this PR.

## Use cases (Optional)

If this PR introduces a new feature, it is better to list some use cases
here, and update the documentation.

## Checklist

1. Pre-commit or other linting tools are used to fix the potential lint
issues.
2. The modification is covered by complete unit tests. If not, please
add more unit test to ensure the correctness.
3. If the modification has potential influence on downstream projects,
this PR should be tested with downstream projects, like MMDet or
MMDet3D.
4. The documentation has been modified accordingly, like docstring or
example tutorials.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants