Live data from Hacker News

Running Stable Diffusion XL 1.0 in 298MB of RAM

github.com

131–140 of 166 posts

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#131
post #38

Earlier quoted context omitted.

Communication is hard. If they said "Takes 50% to 200% more time" it would have been clearer

What? No, that's confusing enough it's almost hostile. The fact thst your math is wrong is proof enough. 50% to 200% more time is 1.5x to 3x slower. I don't like how it was worded by the author. But all you've done is essentially invert the wording while making the math MORE difficult in the process.

1x slower would be 2x as slow, I think, is how people are interpreting it.

I think they are correct but it is easy enough to misinterpret that it is not a good way to phrase things.

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#133

11 hours remind me of doing raytracing on my Amiga 500 back in the day. It was definitely an overnight job for the "final" render.

It reminds me of doing Mandelbrot fractals on my C64. Debugging my code was really hard.

I am still amazed by seeing Fractals rendered in real time. My Core 2 Duo can do the initial renders at about 1080p resolution in about a second or two. Something that would have taken hours to do on an Amiga in the 80's IF you even had the memory for that kind of storage.

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#134
post #115

Earlier quoted context omitted.

Ooh! A toaster that takes a prompt and generates that image on your toast! The GPU heat could be harnessed to actually toast the toast. Let's make a startup!

We're extremely proud to announce that ToasterDream has raised $323M in Series A funds, and we look forward to many years of exciting developments ahead. As the CEO I'd like to personally assure our loyal customers that taking this funding will not compromise the quality of our goods and services — rather, quite the opposite! In fact, in just the first month since we secured this funding with our investors, we have a…

$5.99! But please make those toast dream catridges bigger so we don't have to replace them each week, my trashcan has been complaining about it!

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#135

Earlier quoted context omitted.

> Are those 2048 x 2048 images still sensible? SD 1.5 is best used at 512x512 and may produce sensible images upto 768. It generates monstrosities above that. Similarly SD XL is good upto 1024. You can do significantly higher resolutions with various tricks like tiled diffusion, which is also a memory efficiency hack. (The stable-diffusion-webui tiled diffusion extension uses 2560×1280 direct [no upscale step] genera…

Up scaling the image in chunk creates loads of semantic issues. For example, bottom of tree might look further in the mountains but it's top will be near you. You don't see problems like these in non scaled images.

> Up scaling the image in chunk creates loads of semantic issues.

No, tiled upscaling generally does not have that problem significantly (compared to direct generation at native model-supported size, which doesn't completely avoid that kind of issue), since the composition on that level is set before the upscale (direct tiled generation does, if you aren’t using something like controlnet to avoid it.)

> You don’t see problems like these in non scaled images.

You actually occasionally do, but its fairly rare.

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#136

Earlier quoted context omitted.

Are those 2048 x 2048 images still sensible? SD 1.5 is best used at 512x512 and may produce sensible images upto 768. It generates monstrosities above that. Similarly SD XL is good upto 1024.

> Similarly SD XL is good upto 1024. I don't think that's right. SD xl is good starting from 1024. Anything lower generates a useless mess.

SDXL native trained resolution for 1:1 aspect ratio is 1024x1024 like SD 1.5’s is 512x512. Like SD 1.5, you can go a bit below or above that without too much problem; unlike SD 1.5, SDXL also has significant training in a fairly wide set of other resolutions (ranging from 2048x512 to 512x2048) with approximately 1 mebipixel resolution, and they can be treated as starting points as easily as 1024x1024 can. I think SDXL has a narrower (proportionate) range of viable resolutions around its starting points, but that’s offset but having more than one “starting point”.

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#138

Earlier quoted context omitted.

> Are those 2048 x 2048 images still sensible? SD 1.5 is best used at 512x512 and may produce sensible images upto 768. It generates monstrosities above that. Similarly SD XL is good upto 1024. You can do significantly higher resolutions with various tricks like tiled diffusion, which is also a memory efficiency hack. (The stable-diffusion-webui tiled diffusion extension uses 2560×1280 direct [no upscale step] genera…

Up scaling the image in chunk creates loads of semantic issues. For example, bottom of tree might look further in the mountains but it's top will be near you. You don't see problems like these in non scaled images.

It's conditioned on the lowres input, so if it doesn't have semantic discontinuites it doesn't happen. It will eventually happen if you continue doing this indefinitely, but with reasonable size to tile ratio (say <6x) it works well. With manual or object detection-assisted tiling and proper conditioning (controlnets sidechannel, especially if it's a custom trained controlnet/t2i) it can be pushed further.

Re: Running Stable Diffusion XL 1.0 in 298MB of RAM

#139

I've been using Stable Diffusion on a MBP via invoke.ai. Are there recommendations for better parameterization of SD? I can never match the quality of the images I find on the internet even when using the same prompt and (seemingly) the same knobs (e.g., same Model like Euler A, etc). [edited for clarification]

Draw Things added CUDA compatibility seed mode allows you to match NVDIA card generated images on Mac.
Post reply on HN