steps += 1 if (opt.throughput_estimation_interval is not None and steps % opt.throughput_estimation_interval == 0): print('') sys.stdout.flush() print('[THROUGHPUT_ESTIMATION]\t%s\t%d' % (time.time(), steps)) if done or (opt.enable_gavel_iterator and dataloader.done): break # Update learning rates lr_scheduler_G.step() lr_scheduler_D_A.step() lr_scheduler_D_B.step() if opt.enable_gavel_iterator: dataloader.complete() state = { 'G_AB': G_AB.state_dict(), 'G_BA': G_BA.state_dict(), 'D_A': D_A.state_dict(), 'D_B': D_B.state_dict(), 'epoch': epoch } print('') if opt.enable_gavel_iterator: dataloader.save_checkpoint(state, checkpoint_path) else: save_checkpoint(state, checkpoint_path)