Model Memory Usage Factor Override(ModelMemoryUsageFactorOverride)
该节点通过克隆输入模型并为其添加一个包装器(Wrapper)来实现功能
Model Memory Usage Factor Override
Model Memory Usage Factor Override 节点,该节点通过克隆输入模型并为其添加一个包装器(Wrapper)来实现功能
Model Memory Usage Factor Override 节点是一个实验性工具,用于在采样过程中动态调整模型的内存使用因子。其核心功能是覆盖模型原有的内存使用策略,允许用户根据硬件条件或性能需求进行微调,以优化显存占用。
节点功能
该节点通过克隆输入模型并为其添加一个包装器(Wrapper)来实现功能。这个包装器会在采样准备阶段(PREPARE_SAMPLING)介入,将用户指定的 memory_usage_factor 值应用到模型上,从而覆盖其内部默认的内存使用因子。其内部实现涉及对模型前向传播过程(如 wan_ffn_chunked_forward 方法)的潜在调整,以控制张量在计算时的分块策略,进而影响显存峰值。
节点参数说明 - Model Memory Usage Factor Override
连接输入 (Inputs)
| 参数名称 | 数据类型 | 必填 | 默认值 | 取值范围/选项 | 说明 |
|---|---|---|---|---|---|
model | MODEL | 是 | - | - | **: 需要调整内存使用因子的基础模型。此参数接收一个标准的 MODEL 类型数据流。 |
控件参数 (Parameters)
| 参数名称 | 数据类型 | 必填 | 默认值 | 取值范围/选项 | 说明 |
|---|---|---|---|---|---|
memory_usage_factor | FLOAT | 是 | 1.0 | 0.0 - 100.0 (步长: 0.001) | **: 用于覆盖模型原内存使用因子的乘数。取值范围为 0.0 至 100.0,调整步长为 0.001。默认值 1.0 表示保持原样。 |
Output 输出
| 参数名称 | 数据类型 | 说明 |
|---|---|---|
| MODEL | MODEL | **: 输出一个经过修改的新模型实例,其内存使用行为已根据输入的因子进行调整。 |
使用场景
当你在处理高分辨率图像或复杂模型,并遇到显存不足(Out of Memory)错误时,可以将此节点插入到加载模型(Load Checkpoint)和采样器(KSampler)之间。通过适当降低 memory_usage_factor 的值(例如设为 0.8),可以尝试减少单次计算所需显存,从而在有限的 GPU 内存下完成生成任务。
注意事项
此节点标记为实验性(EXPERIMENTAL),其行为和效果可能因不同的模型架构或 ComfyUI 版本而异。调整内存使用因子可能会影响生成速度,甚至在某些极端值下导致图像质量下降或计算错误,建议在调整后进行效果验证。
Model Memory Usage Factor Override 节点源码链接
Model Memory Usage Factor Override 节点来自 ComfyUI-KJNodes 节点包。
评论
使用 GitHub 登录后即可参与讨论。