Open HoiM opened 5 months ago
@HoiM I guess you should build a DeepCache pipeline manually. Try compiling the model at first, then use DeepCacheSDHelper
to enable DeepCache
I think the Method 1 which @HoiM mentioned is correct too. I tested this on my setup, using SD v1.5 model and DeepCache with branch_id=0, interval=5 setting for checking purpose. This setting confirms dramatic image quality loss, if DeepCache is properly applied. But the speed was same as using only stable-fast, and image quality was not gone low.
This means DeepCache was NOT properly applied to the pipeline with Method 2, because I compiled my graph before modifying the computational graph. It will be great if we can discuss workaround about this. (Good if @chengzeyi has one!)
Thank you for sharing this amazing work :)
DeepCache is an optimization technique that reduces the computation of the UNet loop. I tested it with Stable Fast Diffusion and it is faster than Stable-Fast. It would be great if the DeepCache-simplified UNet loop be further optimized by Stable-Fast.
Currently I did the following experiments:
1, Set up DeepCache first, and then set up stable-fast. This throws an error:
2, Set up stable-fast first, and then set up DeepCache. It ran successfully but the speed is the same as using only stable-fast. However, I think method 1 should be correct: modifying the computational graph (DeepCache) and then trace and optimize (Stable-Fast).
Appreciate your help!