Closed lixiang007666 closed 2 days ago
From @Eigensystem: 可能是由 kernel 选择引起的误差。
From @Eigensystem: 可能是由 kernel 选择引起的误差。
cuDNN会根据输入的形状和类型自动选择最优的算法。不同并行度导致使用kernel不同,从而生成图片有差异?
我觉得可以
确保每次运行时使用的cuDNN算法是确定性的。(可能没帮助) torch.backends.cudnn.deterministic = True torch.backends.cudnn.benchmark = False
观察不同并行度cpu运行结果。可能需要试试用gloo后端运行xDiT。
就是说现在flux 也没办法完美使用,生图会有瑕疵是吗,楼主有解决吗
就是说现在flux 也没办法完美使用,生图会有瑕疵是吗,楼主有解决吗
我们研究了这个问题,不能叫生图有瑕疵。对于一个单独的attention算子,并行和非并行的结果都是有diff的。并行计算加乘的顺序就是不一样的,数值不可能完全一模一样。所以flux使用usp并行生成的结果和单卡不等价是正常。我们观察的生成图片,不比原来的差。二者都是正确的。
好的感谢回复,但是我看到好像现在还不支持lora模型一起使用,这个能解决么? 没有lora的话还是没法使用
好的感谢回复,但是我看到好像现在还不支持lora模型一起使用,这个能解决么? 没有lora的话还是没法使用
这个支持起来很容易。我们发现大部分用户都用comfyui使用lora,你可以看我们comfyui的demo早就支持lora了。
好的感谢回复,但是我看到好像现在不太支持lora模型一起使用,这个能解决么? 没有lora的话还是不能使用
这个支持起来很容易。我们发现大多数用户都使用 comfyui 使用lora,你可以看我们comfyui 的演示很快支持lora了。
好的 感谢回复 马上去试一试
问题描述
固定 seed 测了下,为了确认 seed 是固定的,先重复运行了多卡脚本,确保每次图像不变。
在这个条件下,不同卡数生成的图像:
可以看到在 1024 下是有损的,但是两卡的时候损失比较的小(也分seed)。
一个观察是 512 下损失会更大。
复现脚本: