前置视频:Intel Arc也能AI绘画!配置超简单!
I卡AI绘画性能测试,请看:
重磅好消息!
经过这几天和开源社区各位大佬的探讨(学习),最终确认Intel Pytorch Extension的`torch.xpu.empty_cache()`函数在WSL中存在严重的显存泄漏问题。这个问题几乎直接导致了Intel Arc无法在windows WSL中持久地进行AI绘画。
今天下午SD.Next刚刚修复(绕开)了这个问题,已经在使用SD.Next的小伙伴直接参照这里的步骤进行更新就可以啦: https://blog.nuullll.com/ipex-sd-docker-for-arc-gpu/#/zh-cn/getting-started?id=%e6%9b%b4%e6%96%b0sdnext%e6%ba%90%e4%bb%a3%e7%a0%81
不知道自己是否遇到了显存泄漏问题?
典型现象:
每跑一张图,任务管理器中显示的专用GPU内存占用就会上升一个台阶,跑若干张图之后,专用GPU内存占用几乎一直在100%附近浮动。
如果无视继续跑图,不久后命令行会提示"DPCPP out of memory. Tried to allocate XXX MiB",然后大概率会黑屏闪一下掉驱动,Web UI无法继续正常运行。
只有关掉Web UI服务,显存才会释放。
如图所示
修复前 vs. 修复后 显存占用情况
AnythingV5, DPM++ 2M Karras, steps=20, 尺寸768^2, 批次数量=100, 批次大小=1
正向提示词:1girl
反向提示词:nsfw, EasyNegative
修复后跑100张(可以更多,大家随意)768*768无压力,显存使用(包含系统其他应用)维持在6GB左右。而修复前跑60张768*768稳定爆显存。
Docker镜像v0.3发布
顺便提一下,刚刚发布了支持Intel Arc显卡的Stable Diffusion Web UI镜像v0.3版,修复了容器中的内存泄漏问题(注意,和显存泄漏不一样)。
https://blog.nuullll.com/ipex-sd-docker-for-arc-gpu/#/zh-cn/release-notes?id=v03-%ef%bc%88%e6%9c%80%e6%96%b0%ef%bc%89
参考链接:
https://github.com/Nuullll/ipex-sd-docker-for-arc-gpu/issues/8
https://github.com/intel/intel-extension-for-pytorch/issues/388
https://github.com/vladmandic/automatic/commit/c3a4293f2227fe77b9ea908c99a1bda2aef43175