SDXS: 90 millisecond renders with comfyUI

Stephan Tual
3 Apr 202407:21

TLDRIn this video, the creator addresses common issues with slow loading times in KY's interface due to an accumulation of models and custom nodes. They demonstrate using SDXS for rapid image generation, but note the trade-off in quality. The solution involves reinstalling KY, utilizing the verbose parameter for transparency, and properly configuring the model path for a streamlined experience, resulting in significantly improved rendering speeds.

Takeaways

  • 🚀 The video discusses the issue of slow rendering times and interface load times in KY, particularly due to a high number of custom nodes and models.
  • 🛠️ Using developer tools can help identify problematic functions, but disabling them is often inconvenient and not a permanent solution.
  • 🌐 Introduces SDXS as a solution for quick image generation, although the quality may be compromised.
  • 📁 Disabling previews in the manager can improve performance, but it's not ideal since previews are useful.
  • 🔄 The presenter proposes a solution by reinstalling KY and using the 'verbose' command line parameter for better transparency and performance.
  • 📋️ Editing the 'extra model path.yml' file and pointing it to the existing model directory is a crucial step in the process.
  • 📈 The script provides a detailed guide on how to set up the new KY version, including unzipping, placing it in a folder, and configuring the model path.
  • 🔧 The presenter emphasizes the importance of not having an extra slash at the end of the base path in the yaml file.
  • 🎨 With the new setup, the presenter demonstrates the ability to generate images at a much faster rate, even with complex prompts.
  • 📸 The video shows the capability of SDXS to generate images at an impressive speed, saving them dynamically as new prompts are entered.
  • 📊 The comparison between the old and new KY installations highlights a significant improvement in image generation speed, from 0.19-0.20 seconds to 0.09-0.10 seconds.

Q & A

  • What is the main issue discussed in the transcript?

    -The main issue discussed is the slow loading time and performance problems of an existing Confy UI installation, particularly in the browser, and the impact of a high number of custom nodes on the system.

  • What is the specific problem with the GUI in the user's case?

    -The GUI takes up to 5 seconds to load, which is not solely due to server issues but also related to the browser, the Guey, and the Light Graph, along with extra notes running and taking too much time.

  • How can one identify the function causing performance issues?

    -One can use developer tools to select the function that's currently causing trouble, which can help identify the source of performance problems.

  • What is the proposed temporary solution for slow interface performance?

    -A temporary solution is to go into the manager and disable the previews, but this is not ideal as the previews are useful.

  • What does the user plan to do to address the performance issues?

    -The user plans to kill the current server instance, download a fresh copy of Ky, and set it up to use the existing models from the old folder.

  • How does the user ensure the new Ky installation knows where to find the models?

    -The user edits the Nvidia GPU bat file to add the --verbose command line parameter and modifies the extra model path.yaml file to point to the folder containing the existing models.

  • What is the result of the new Ky installation in terms of performance?

    -The new Ky installation loads in microseconds, significantly faster than the regular version, and it can generate images at a rate of 10 frames per second with the use of batch processing.

  • What is the average time taken to generate an image in the old and new installations?

    -The old installation took an average of 0.19 to 0.20 seconds per image, while the new installation takes about 0.09 to 0.10 seconds per image.

  • How can one potentially increase the speed of image generation with SD XS?

    -One can increase the speed by using an empty latent image batch of 100 and processing them all at once, which can potentially reach up to 100 frames per second.

  • What is the analogy used in the transcript to explain batch processing?

    -The analogy used is putting 100 cookies in the oven at a time versus putting one cookie in the oven at a time to illustrate the efficiency of batch processing.

  • Where can one find the workflow mentioned in the transcript?

    -The workflow is located on Float, as mentioned in the transcript.

Outlines

00:00

💻 Optimizing Interface Performance

The paragraph discusses the challenges of dealing with a slow-loading interface due to an excessive number of custom nodes and models. The speaker shares their experience with an existing confy install that takes a long time to load, particularly in the browser, and how it affects both the interface and rendering performance. They suggest using developer tools to identify problematic functions and provide a solution by reinstalling Ky and managing the custom nodes more efficiently. The speaker emphasizes the importance of having a clean setup to avoid performance issues and demonstrates how to improve the situation by using a new Ky instance and properly configuring the model paths.

05:01

🚀 Accelerating Image Generation with SD XS

In this paragraph, the focus is on utilizing SD XS technology for rapid image generation. The speaker explains how SD XS uses a one-step diffusion process to quickly create images, albeit with varying quality. They discuss the benefits of disabling interface previews to improve performance, but also highlight the need for a more permanent solution. The speaker then demonstrates how to use SD XS effectively by adjusting the batch size and prompt to generate a high volume of images in a short amount of time. They compare the performance of their new, clean Ky install with their old, cluttered one, showing significant improvements in image generation speed. The paragraph concludes with a tip on how to save images automatically and the speaker's encouragement for viewers to experiment with the workflow.

Mindmap

Keywords

💡SDXS

SDXS refers to a technology that uses a one-step diffusion process to rapidly generate images. In the context of the video, it is used to demonstrate the speed at which images can be produced, albeit with a trade-off in quality. The script mentions generating a large number of images ('bears per second') using SDXS, highlighting its efficiency in rendering speed.

💡KY

KY, or Krita, is a professional free and open-source digital painting program. The video discusses issues with an existing Krita installation taking a long time to load, particularly the GUI in the browser. The speaker aims to address these performance issues by reinstalling Krita and managing its settings more efficiently.

💡confyUI

confyUI is mentioned as an existing installation that is causing performance issues due to a high number of custom nodes and other elements. The speaker plans to replace this with a fresh installation of Krita to improve loading and rendering times, indicating that confyUI is likely a user interface or a set of tools related to Krita or a similar program.

💡performance

Performance in this context refers to the efficiency and speed at which the software or interface operates. The video discusses the poor performance of the existing confyUI installation and the steps taken to improve it by reinstalling Krita and managing its settings to achieve faster load and render times.

💡custom nodes

Custom nodes are user-created components or extensions that add specific functionalities to a software program. In the video, the speaker mentions that a high number of custom nodes in the confyUI installation is contributing to the performance issues. Disabling these nodes or managing them properly is suggested as a potential solution to improve the software's performance.

💡reinstall

Reinstalling refers to the process of uninstalling a software program and then installing it again, often to fix issues or to start with a clean configuration. In the video, the speaker decides to kill the problematic server instance and reinstall Krita to address the performance problems they were experiencing with the existing setup.

💡Nvidia GPU

Nvidia GPU refers to a graphics processing unit manufactured by Nvidia, a company known for its high-performance GPUs used in gaming, professional visualization, and other demanding applications. In the context of the video, the speaker provides a tip to edit the Nvidia GPU settings to add a command line parameter ('--verbose') to help diagnose and understand the software's operations better.

💡yaml file

A yaml file is a human-readable data serialization standard used for configuration files and applications. In the video, the speaker instructs the viewer on how to modify a yaml file (specifically 'extra model path.yml.example') to point the newly installed Krita to the directory containing the existing models, ensuring a seamless integration of the user's previous work and settings.

💡config UI

Config UI likely refers to the user interface of the configuration settings of the software. In the video, the speaker discusses using the config UI to diagnose and fix performance issues, such as by adding command line parameters or adjusting settings related to model paths and rendering behaviors.

💡batch processing

Batch processing is a method of processing a large number of similar tasks, jobs, or data records in a single run. In the context of the video, the speaker mentions using batch processing to generate 100 images at a time, which is faster than generating images one by one. This method is used to optimize the rendering speed and efficiency of the software.

💡latent image batch

A latent image batch refers to a group of images that are processed together to improve efficiency and speed. In the video, the speaker suggests using an empty latent image batch of 100 and processing them all at once to achieve even faster rendering times. This technique is used to maximize the performance of the software by reducing overhead and streamlining the image generation process.

Highlights

The speaker is addressing issues with slow rendering times in their current setup, particularly with KY and light graph.

They mention using developer tools to identify functions causing performance issues, such as CJs linked to custom nodes.

The speaker provides an example using SD XS, a technology that quickly generates images, albeit with lower quality.

Disabling previews in the manager is suggested as a temporary solution to performance issues.

The speaker emphasizes the need for a permanent solution due to the high number of custom nodes in use.

A new approach is introduced by killing the current server instance and downloading a fresh copy of KY.

The use of the verbose command line parameter with Nvidia GPU bat is recommended for troubleshooting purposes.

Instructions are given on how to modify the extra model path yaml file to point to the correct folder.

The speaker explains the benefits of using a clean install of KY, noting the reduction in folders and less system clutter.

A demonstration shows the server starting up instantaneously compared to the regular version of KY.

The new install is shown to be significantly faster, with a 0.09 to 0.10 seconds image generation time.

Batch processing is suggested for even faster results, with the potential to reach 100 frames per second.

The speaker compares the old install's average image generation time of 0.19 to 0.20 seconds to the new install's 0.09 to 0.10 seconds.

The workflow is made available on float for others to experiment with, regardless of computer speed.

The speaker concludes by encouraging viewers to stay until the end of the presentation.