
第一次用秋叶的ComfyUI整合包跑图时我遇到过一件挺让人崩溃的事工作流在前半段一切正常模型加载到一半界面突然消失Windows弹出“系统内存不足”的提示控制台连个明确的报错都没留下。当时我第一反应是显卡显存不够折腾了半天分辨率、换轻量模型后来才发现问题根本不在显卡——机器虽然只有16GB物理内存但虚拟内存被系统默认设置在C盘大小又被Windows的“自动管理”压得很死ComfyUI闪退完全是被它卡断的。这篇文章就把这件事彻底讲清楚为什么跑ComfyUI之前要手动增加虚拟内存从哪看当前值、设多大合适、设置完还有哪些坑。不挑系统版本Win10和Win11都适用主要面向用整合包入门、内存比较少、或者正准备跑大模型工作流的人。1. ComfyUI为什么对虚拟内存这么敏感显存、内存和页面文件是怎么分工的1.1 模型推理时数据其实是在三级存储里来回搬运很多人以为跑ComfyUI只看显卡显存这个理解其实少了一半。拿一次典型的文生图来说工作流运行时要做的事大致是加载CLIP文本编码器把提示词转成条件向量加载UNet或者DiT模型做反向扩散去噪最后再用VAE解码成像素图像。这些模型的权重、中间特征图、条件数据全部要放进显存计算。问题是消费级显卡的显存普遍不大6GB、8GB、12GB是主流一个SDXL模型光权重就接近7GB一张FLUX模型更是十几个GB起步。显存放不下怎么办ComfyUI有offload机制会自动把暂时用不到的模型层从显存卸载到物理内存等用到的时候再传回显存。这就是第一层搬运。物理内存被占满之后Windows才会启动第二层兜底把物理内存里暂时不用的数据写入硬盘上的pagefile.sys文件也就是虚拟内存。换句话说虚拟内存的本质是硬盘空间临时客串内存。ComfyUI跑大工作流时物理内存一旦不够程序并不会立刻停止而是继续往页面文件里写。可如果页面文件上限不够高、所在磁盘空间不足系统就没有兜底可用了进程要么被杀掉要么就是卡死甚至闪退。1.2 默认的“自动管理”为什么总是掉链子Windows默认开启“自动管理所有驱动器的分页文件大小”系统会按照物理内存的某个比例在C盘分配一个动态区间。听起来很智能实际在ComfyUI场景下有两个硬伤。第一区间上限通常不够。系统默认策略下页面文件的大小往往只比物理内存多出有限的一部分而ComfyUI跑批量队列、高分辨率重绘、视频生成工作流时内存提交峰值经常是物理内存的几倍。峰值一旦顶到上限下一个内存分配请求就会失败。第二C盘会自动缩水。如果C盘剩余空间紧张Windows会悄悄调小页面文件用户不主动查看根本发现不了。很多人跑图崩溃后去任务管理器一看C盘可用空间只剩几个GB系统托管的页面文件被压缩到1GB以下这种状态下大模型连加载都撑不过去。整合包的绘世启动器里有显存优化选项但那个调整的是显存和内存之间的分配策略替代不了系统级页面文件。你选择低显存模式模型会更积极地往内存里搬运核心逻辑是把显存压力转移到物理内存再做不了主时就要页面文件兜底所以启动器选项和虚拟内存是叠加关系不是二选一的关系。2. 先别急着改教你两分钟看清当前虚拟内存的真实状态2.1 三种常见的“内存不足”报错要分清在动设置之前最重要的是先判断你的ComfyUI到底属于哪种“内存不足”。因为很多人折腾半天其实是在处理一个压根不相干的问题。报错类型典型表现真正原因CUDA out of memory控制台直接红字提示显存不足显存扛不住优先考虑低显存参数或精简模型Windows弹窗“虚拟内存不足”系统级提示某个程序内存不足页面文件确实偏小需要手动扩容ComfyUI闪退、进程被杀窗口凭空消失无明确报错物理内存加页面文件全部吃满进程被系统终止如果是第一种情况你改再多的虚拟内存也没用那是显存问题。但如果是第二种和第三种虚拟内存的设置就是最直接的解法。尤其是那种控制台打印到一半就突然退出、连错误栈都没留下的情况十有八九是系统底层把进程OOM掉了这时候去翻Windows事件查看器会在“应用程序-错误”里看到事件ID 1000或1023一类的记录。2.2 查看页面文件大小用这几招最快我推荐一个三秒打开系统属性的方式按WinR输入sysdm.cpl回车直接进“系统属性”。比一层层点“此电脑-属性-高级系统设置”快得多。切到“高级”选项卡性能区域点“设置”再切到“高级”底部就有“虚拟内存”区域点“更改”能看到当前的配置。要看实时使用情况用PowerShell执行这条命令Get-CimInstance Win32_PageFileUsage执行之后能看到当前所有页面文件所在的盘符、已分配大小和当前使用量。如果显示C盘“系统托管”或者初始值最大值都很小基本可以认定默认配置不够用。还有个更直观的入口任务管理器-性能-内存。重点看右下角的“已提交”和“峰值提交”。已提交代表当前所有进程加起来向系统申请的内存配额峰值提交则是开机以来到过的最高值。如果峰值提交已经超过物理内存很多说明Windows一直在依赖页面文件运转这种情况下一旦页面文件上限不够离崩溃就不远了。2.3 判断标准很简单会不会在跑图中途触顶我自己判断要不要动虚拟内存就看一个标准物理内存占用过半以后任务管理器里“已提交”的数字还在持续上升同时硬盘占用率飙升到100%软件界面开始明显卡顿。出现这种迹象说明系统正在高频换页页面文件空间又快见底基本可以确诊为虚拟内存“家底太薄”。这时候再跑ComfyUI闪退只是时间问题。3. 手动增加虚拟内存的完整操作每一步都说明理由3.1 安全、可逆的设置路径再次强调这一步并不复杂但每一步都有讲究。完整路径如下WinR打开运行输入sysdm.cpl回车进入系统属性。“高级”选项卡下性能区域点“设置”再切到“高级”点虚拟内存区域的“更改”。取消勾选“自动管理所有驱动器的分页文件大小”。先不要急着删原有配置。选中当前页面文件所在的盘一般是C盘选择“无分页文件”但先别点确定。选中你打算放置页面文件的目标盘比如D盘或E盘选择“自定义大小”。初始大小和最大值填入同一个数值比如32768然后点右侧“设置”。依次点确定系统会提示重启重启后生效。我特别建议按这个顺序操作而不是一上来就把C盘的分页文件关掉。先在新盘把页面文件立起来再顺手清理系统盘那份能避免中途系统处于无页面文件状态。虽然Windows没有页面文件也能启动但不少系统组件会对分页文件的缺失做出异常反应没必要给自己制造这种风险。3.2 为什么初始大小和最大值建议写成一样很多人会纠结初始值和最大值该怎么填。我的经验是给ComfyUI用的机器直接填同一个数字。这样做的本质是固定页面文件大小防止它频繁伸缩。如果初始和最大值不一样系统在高负载时会反复扩展文件再收缩磁盘碎片增加、瞬时卡顿变多ComfyUI本来内存波动就大这种抖动会放大崩溃概率。固定大小也有个代价磁盘空间被占据后不会自动释放。比如设了64GB固定值即便实际只用了10GB文件也占据着64GB空间。但在磁盘够大的前提下这个代价换来的稳定性是值得的。如果空间确实紧张也有折中方案初始值给32GB最大值给64GB让系统在峰值时自动扩展。只是要接受这种模式在自动扩容瞬间可能卡一下。3.3 页面文件放哪个盘首选独立SSD别放机械盘页面文件的位置对ComfyUI体验的影响非常大。机械硬盘的随机读写速度通常只有几十MB/s而页面文件访问是典型的随机小文件读取机械盘在这种场景下会变成整个系统的木桶短板。如果你只有一块机械盘页面文件放在上面反而会比没有更慢这种情况优先加物理内存比加虚拟内存实在。如果电脑有多个SSD除了系统盘之外选一块剩余空间大、长期不需要存放重要资料的硬盘来做页面文件最合适。原因是页面文件和系统盘的分区读写会互相争抢IOComfyUI加载模型本来就有高IO需求把页面文件丢到能和系统盘错开的SSD上可以缓解不少。很多人在意“SSD写多了会坏”尤其是网上流传的“虚拟内存伤硬盘”说法。实际上页面文件的写入量在正常使用中远小于日常下载、游戏安装这类重IO操作。真正要关心的是SSD剩余空间别把盘塞到95%以上再放页面文件保留足够空白空间对主控垃圾回收更友好。4. ComfyUI场景下虚拟内存到底设多大直接给配置参考4.1 不同配置下的参考表格虚拟内存不是越大越好也不是简单的“物理内存乘以2”。ComfyUI和普通办公软件不同它是典型的高峰值内存应用批量生图、高分辨率放大、多模型叠加时内存申请会瞬间冲破常态水位。我这里给一份按常见配置整理的参考值可以直接抄作业。物理内存常见ComfyUI用法建议页面文件8GB只跑SD1.5轻量模型、低分辨率32GB起步但不建议长期依赖优先加内存16GBSDXL、FLUX小显存工作流32-64GB32GBSDXL/FLUX、批量队列、视频生成32-64GB64GB以上常规工作流、多工作流同时开32GB兜底即可核心参照不是物理内存倍数而是你跑的那个工作流的内存峰值提交量。怎么估先按16GB内存跑SDXL的场景来算模型权重、VAE、CLIP、中间特征图加在一起峰值提交很容易超过40GB把页面文件设到64GB才有比较充裕的缓冲。如果工作流里还挂了ControlNet、多个LoRA、图像放大节点峰值会更高。4.2 显存大小和虚拟内存是联动的虚拟内存不能只看内存条显存大小也得一起算。显存只有6-8GB时大模型几乎全程都在做显存和内存之间的offload物理内存会更早吃满然后疯狂往页面文件写。这种场景下页面文件建议直接给到64GB。显存12GB以上时offload频率明显降低页面文件主要起到兜底作用32GB通常已经够用。如果你的目标是跑视频生成工作流比如热词里常提到的“ComfyUI本地生成视频工作流”那情况又不一样。视频生成往往同时加载文本编码器、图像编码器、DiT主干、VAE等好几个大模型内存占用比静态图像翻倍。我第一次跑视频工作流时16GB物理内存直接爆页面文件从32GB加到64GB才稳定。准备做视频方向的建议别犹豫直接64GB起步。还要提醒一句整合包启动器里那些低显存优化参数不要乱开。开启之后模型会更多地在内存和显存之间反复搬运对页面文件的依赖反而更大。如果你没有足够的虚拟内存兜底这类参数只会让程序更早崩溃。4.3 笔记本用户要额外注意笔记本用户看到这里多半会嘀咕我的C盘就剩30GB设64GB页面文件不现实。这种情况不用硬刚页面文件可以放到D盘或者其他空间富余的SSD分区。大多数笔记本出厂只有一个分区但可以通过磁盘管理压缩卷搞出D盘再把页面文件转移过去这一步就是热搜词里“转移虚拟内存”的常见用途。另外一个经常被忽略的问题是笔记本的核显会从物理内存里划走一部分作为共享显存。8GB内存的机器实际可用可能只剩6GB左右跑轻量模型都很勉强。所以笔记本跑ComfyUI我建议物理内存16GB起步同时页面文件至少32GB而且尽量在插电源状态下运行。省电模式会限制CPU和显卡性能内存换页速度也会受影响跑图更容易出问题。5. 设完之后别急着开跑这几个坑建议先排掉5.1 设置没生效的常见原因头号坑不是路径问题很多人设置完虚拟内存后明明填了数值重启之后进系统属性一看还是原来的数值。这种情况八成是设置对话框里没点“设置”按钮只点了“确定”。这两个按钮在界面上挨着很容易漏掉。在窗口右侧选中自定义大小、填好数值之后必须先点一下“设置”按钮让新配置进入下面的列表区域再点“确定”才真正生效。还有一个坑你在C盘选了“无分页文件”、在D盘设了固定值但重启后系统弹蓝色报错或者启动特别慢。这不是设置错了而是Windows在关机阶段清理旧页面文件、开机阶段创建新页面文件一次重启完成迁移速度慢一点是正常的第二次重启就正常了。5.2 页面文件被吃满的表现与应对思路设完虚拟内存不等于一劳永逸页面文件还是会吃满。常见场景是跑高分辨率重绘时先有VAE解码大图再做图像放大内存需求噌噌往上涨或者是队列里排了十张图前面几张的中间结果还没释放后面几张又开跑峰值叠加。出现这种情况时任务管理器里“已提交”会顶到上限然后Windows弹“系统的页面文件太小”提示。我的应对思路是分两步。短期先看是工作流里哪个节点的内存飙升最快如果是高分辨率放大这类后处理节点可以临时降低放大倍率或者分批跑长期直接把页面文件再加一档同时关掉浏览器、聊天工具这些吃内存的常驻程序。记住虚拟内存只是缓冲池不是无底洞程序本身的内存占用逻辑不合理再大的页面文件也只能延迟崩溃。5.3 内存压缩和虚拟内存不是一回事别搞混还有一个容易混淆的概念Win10和Win11自带的内存压缩功能。它在任务管理器里会显示为“已压缩”多少MB本质是把物理内存中不常访问的页面压缩后继续放在内存里减少对硬盘页面文件的调用。很多人以为开了内存压缩就不用设虚拟内存了这个理解是错的。内存压缩处理的是“没在用的数据怎么临时放着”虚拟内存处理的是“物理内存满了往哪倒”两者是前后端的关系。用PowerShell执行Get-MMAgent可以看到当前MemoryCompression是否启用。普通用户保持系统默认就好不建议为了省内存手动去开关它。内存压缩让内存的“虚胖”占用看起来很高但系统并没有因此崩溃这是它在兜底的体现。如果你看到内存占用85%还跑得很顺畅不用慌一部分功劳就是内存压缩的。5.4 页面文件别放这个位置容易出诡异毛病最后说一个不太常见但踩过的问题页面文件不要放在U盘、移动硬盘或者被BitLocker加密的可移动设备上。Windows虽然允许在部分外部存储上设置页面文件但设备一拔出系统就会找不到分页文件轻则报错重则无法进入桌面。这种配置没有任何性能优势纯粹是给自己找麻烦。页面文件属于操作系统底层文件也需要避开被第三方优化工具“清理”的路径。有些清理软件会去清理C盘pagefile.sys如果重启前被清理系统可能无法正常生成分页文件。如果你装了这类工具建议在排除列表里把这个文件加进去。6. 跑过一阵子之后我自己的最终配置是什么样的说回我自己的环境一台16GB内存、8GB显存的笔记本页面文件固定在D盘初始和最大值都填的是64GBC盘保持无分页文件状态。这个配置已经稳定跑了半年多SDXL、FLUX和几个视频生成工作流中间没有再出现过“加载到一半闪退”的情况。只有一次跑特别复杂的视频生成工作流时感觉到明显卡顿原因是D盘剩余空间掉到10GB以下页面文件扩展空间不足清理了之后恢复如常。给还没动手的读者一个直接结论如果你刚装好ComfyUI整合包第一次启动前别急着跑工作流先花五分钟看看虚拟内存设置。物理内存16GB的用户直接设到32到64GB跑视频生成就取上限32GB内存的用户设32GB保底即可8GB内存的话优先考虑物理内存升级虚拟内存最多是缓解替代不了物理内存的容量瓶颈。页面文件安置在空间富余的非系统SSD上比任何花哨的优化参数都管用。