Scale loss for ipex

This commit is contained in:
Disty0
2023-06-15 23:55:23 +03:00
parent c52c63128b
commit 71b1532bb0
2 changed files with 4 additions and 0 deletions
+2
View File
@@ -654,6 +654,8 @@ def train_hypernetwork(id_task, hypernetwork_name, learn_rate, batch_size, gradi
loss = shared.sd_model.forward(x, c)[0] / gradient_step
del x
del c
if shared.cmd_opts.use_ipex and loss > (1 / gradient_step):
loss = (loss - (1 / gradient_step)) * 10
_loss_step += loss.item()
scaler.scale(loss).backward()
@@ -486,6 +486,8 @@ def train_embedding(id_task, embedding_name, learn_rate, batch_size, gradient_st
else:
loss = shared.sd_model.forward(x, cond)[0] / gradient_step
del x
if shared.cmd_opts.use_ipex and loss > (1 / gradient_step):
loss = (loss - (1 / gradient_step)) * 10
_loss_step += loss.item()
scaler.scale(loss).backward()