mirror of
https://github.com/kohya-ss/sd-scripts.git
synced 2026-04-09 06:45:09 +00:00
apply offloading method runable for all trainer
This commit is contained in:
@@ -251,6 +251,11 @@ def train(args):
|
|||||||
|
|
||||||
if args.deepspeed:
|
if args.deepspeed:
|
||||||
# wrapping model
|
# wrapping model
|
||||||
|
import deepspeed
|
||||||
|
if args.offload_optimizer_device is not None:
|
||||||
|
accelerator.print('[DeepSpeed] start to manually build cpu_adam.')
|
||||||
|
deepspeed.ops.op_builder.CPUAdamBuilder().load()
|
||||||
|
accelerator.print('[DeepSpeed] building cpu_adam done.')
|
||||||
class DeepSpeedModel(torch.nn.Module):
|
class DeepSpeedModel(torch.nn.Module):
|
||||||
def __init__(self, unet, text_encoder) -> None:
|
def __init__(self, unet, text_encoder) -> None:
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|||||||
@@ -224,6 +224,11 @@ def train(args):
|
|||||||
# acceleratorがなんかよろしくやってくれるらしい
|
# acceleratorがなんかよろしくやってくれるらしい
|
||||||
if args.deepspeed:
|
if args.deepspeed:
|
||||||
# wrapping model
|
# wrapping model
|
||||||
|
import deepspeed
|
||||||
|
if args.offload_optimizer_device is not None:
|
||||||
|
accelerator.print('[DeepSpeed] start to manually build cpu_adam.')
|
||||||
|
deepspeed.ops.op_builder.CPUAdamBuilder().load()
|
||||||
|
accelerator.print('[DeepSpeed] building cpu_adam done.')
|
||||||
class DeepSpeedModel(torch.nn.Module):
|
class DeepSpeedModel(torch.nn.Module):
|
||||||
def __init__(self, unet, text_encoder) -> None:
|
def __init__(self, unet, text_encoder) -> None:
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|||||||
@@ -419,6 +419,11 @@ class NetworkTrainer:
|
|||||||
# acceleratorがなんかよろしくやってくれるらしい / accelerator will do something good
|
# acceleratorがなんかよろしくやってくれるらしい / accelerator will do something good
|
||||||
if args.deepspeed:
|
if args.deepspeed:
|
||||||
# wrapping model
|
# wrapping model
|
||||||
|
import deepspeed
|
||||||
|
if args.offload_optimizer_device is not None:
|
||||||
|
accelerator.print('[DeepSpeed] start to manually build cpu_adam.')
|
||||||
|
deepspeed.ops.op_builder.CPUAdamBuilder().load()
|
||||||
|
accelerator.print('[DeepSpeed] building cpu_adam done.')
|
||||||
class DeepSpeedModel(torch.nn.Module):
|
class DeepSpeedModel(torch.nn.Module):
|
||||||
def __init__(self, unet, text_encoder, network) -> None:
|
def __init__(self, unet, text_encoder, network) -> None:
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
|||||||
Reference in New Issue
Block a user