disentangled-image-editing-final-project
/
ContraCLIP
/models
/genforce
/runners
/controllers
/cache_cleaner.py
| # python3.7 | |
| """Contains the running controller to clean cache.""" | |
| import torch | |
| from .base_controller import BaseController | |
| __all__ = ['CacheCleaner'] | |
| class CacheCleaner(BaseController): | |
| """Defines the running controller to clean cache. | |
| This controller is used to empty the GPU cache after each iteration. | |
| NOTE: The controller is set to `LAST` priority by default. | |
| """ | |
| def __init__(self, config=None): | |
| config = config or dict() | |
| config.setdefault('priority', 'LAST') | |
| config.setdefault('every_n_iters', 1) | |
| super().__init__(config) | |
| def setup(self, runner): | |
| torch.cuda.empty_cache() | |
| def close(self, runner): | |
| torch.cuda.empty_cache() | |
| def execute_after_iteration(self, runner): | |
| torch.cuda.empty_cache() | |