Der Text da oben ist ehrlich gesagt etwas bescheiden. Es gibt da kein einfach und nicht einfach, also nicht wirklich, dass man das festmachen könnte.
CatCat kommt da schon sehr nah ran, mit dem, was er schreibt.
Reine Bildgenerierung: Hier entscheidet vor allem die zu erzeugende Bildgröße und dazu dann auch noch der Prompt selbst. Je länger der ist, desto komplexer wird es. Dazu gehört auch der negative Prompt. Entscheidend ist auch, wie viele Steps er machen soll. Default ist ja 20. Wirklich gut wird es ab 50. Für einen schnellen Test reichen aber auch mal 5 aus. Je mehr es sind, desto mehr muss aber berechnet werden, also Details, Feinheiten etc.
Die Bildgröße selbst ist aber nicht der ausschlaggebende Faktor, wenn man Bilder nur skalieren will. Denn das geht z.B. hier problemlos bis 8000 px, während er bei einer Neu-Erzeugung hier bei 600 px abstürzt.
Und dann eben noch die ganzen anderen Einstellungen, ob und wie man den Diffusor benutzt, Wie das "Noising" ist etc.
Und dann scheint es auch noch auf das Model selbst anzukommen. Hier gehen manche und manche nicht, obwohl die von der Größe her identisch sind. Wobei die Größe natürlich auch eine Rolle spielt. Ist schon ein Unterschied, ob der bei SD1.5 an die 6 GB laden muss oder eben bei der SDXL über 10GB.
Dann kommen da noch die Modelle an sich ins Spiel, also die Grundmodelle. Diese sind ja im Prinzip alle für PyTorch entwickelt. Das nutzt aber letztendlich keiner direkt, das ist aber das Default-Modell. Die ganzen Berechnungen müssen da also in Echtzeit umgewandelt werden, von PyTorch in z.B. DirectML oder Cuda. Wobei letzteres auch wieder nur eine "Schittstelle" ist, die dann bei Nvidia auf die eigentlich GPU "Tensor" zugreift. Also sehr viel Umwandlung in Echtzeit nötig.
Meine letzten Tests, die mit der SD 1.5 sehr schnell waren, waren mit optimierten Modellen. Dafür gibt es z.B. Olive alias Onnx (https://onnxruntime.ai/docs/performance/olive.html) von Microsoft (https://github.com/microsoft/Olive). Das ist kompatibel mit so gut wie allen Modellen von HuggingFace und auch Grafikkarten, geht sogar zurück auf Karten, die fast 10 Jahre alt sind. Also keine Unterscheidung, ob man da AMD oder Nvidia hat. Der Leistungsvorsprung, den Nvidia hatte, durch Cuda, ist dahin. Nun sind die gleichwertigen Karten von beiden Herstellern genauso schnell.
Der Unterschied ist dabei, dass hier die Modelle vorher optimiert werden und als optimierte Version gespeichert. Die erzeugen dann also Modelle, die auf die eigene Grafik explizit ausgelegt sind. Die ganzen dynamischen Berechnungen, die sonst in Echtzeit sind, z.B. Umrechnung von FP32 in FP16, erfolgen also vorher. Dauert hier beim SD 1.5 ca. 40 Minuten, dafür ist das Ding dann aber fix und fertig zur direkten Verwendung. Ergebnis war ja, Bildgenerierung war um Faktor 8 schneller. Logisch, die dynamische Umwandlung der ganzen Befehle an die GPU waren weg.
Mit der SDXL konnte ich das leider noch nicht machen, denn da stürzt mir der Rechner schon ab, wenn ich nur die Umwandlung starte, also sofort, bevor er überhaupt angefangen hat. Der scheint da also irgendeinen Befehl anzusprechen, der zum Absturz führt. Leistung wird da noch keine gezogen. Wohingegen das System mit der SD1.5 bei 100% Leistung stabil läuft.