implemented low memory option for fid.py #15
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See #14
I implemented behaviour to load and un-load each batch of images during evaluation of the activations instead of loading all images to RAM at the beginning of evaluation.
This reduces memory requirements by a significant amount.
Specifically, it reduced the memory footprint from >16GB to <4GB when using 10.000 images of size 256x256.
The new behaviour is triggered by enabling the
--lowprofile
flag in the command line args of fid.pyI made this the non-default behaviour since it might increase execution time slightly in non-memory-constrained environments.
The results should be near-identical.
I have observed small differences between scores, at non-significant digits (5th place after comma), but those are probably explained by floating-point rounding errors.