进行Stable Diffusion的ai训练怎么选择显卡?

Stable Diffusion主要用于从文本生成图像,是人工智能技术在内容创作行业中不断发展的应用。要在本地计算机上运行Stable Diffusion,您需要一个强大的 GPU 来满足其繁重的要求。强大的 GPU 可以让您更快地生成图像,而具有大量 VRAM 的更强大的 GPU 可以让您更快地创建更高分辨率的图像。那么,最适合Stable Diffusion的消费类 GPU 是什么?让我们看看NVIDIA和AMD的部分GPU上的Stable Diffusion性能来寻找答案。

关于Stable Diffusion

什么是Stable Diffusion?

Stable Diffusion是一种机器学习模型。由于它能够根据文本提示生成图像,因此它越来越多地用于内容创建。Stable Diffusion 的独特之处在于它缺乏商业开发的软件,而是依赖于各种开源应用程序。此外,与其他类似的文本到图像模型不同,它通常在本地系统上本地使用,而不是使用在线 Web 服务。

Stable Diffusion 可以在具有至少 8GB VRAM 的中档 GPU 上运行。然而,它极大地受益于具有更多 VRAM 的强大现代 GPU。

Stable Diffusion的组成框架

您可以直接使用Stability AI和Runway开发的Stable Diffusion版本。然而,大多数人使用第三方创建的基于网络的版本。最常用的Stable Diffusion是:

  • Automatic 1111:这主要用于 NVIDIA GPU,尽管 AMD 和 Apple Silicon 也有分支。它允许您使用xformers,它可以显着提高 NVIDIA GPU 的性能。
  • SHARK:SHARK 是Automatic 1111 的替代方案。它本身支持 NVIDIA 和 AMD GPU。然而,AMD GPU 的性能往往较高,而 NVIDIA GPU 的性能往往较低。
  • 自定义:有些人使用他们需要的功能创建自己的应用程序,因为Stable Diffusion是公开的,任何人都可以直接使用。

每个实现在功能和可用性方面都有独特的优点和缺点。从性能和基准测试的角度来看,推荐使用Automatic 1111和SHARK。根据您要测试的GPU,建议同时使用Automatic 1111和SHARK。使用 Automatic 1111 测试 NVIDIA GPU,使用 SHARK 测试 AMD GPU。

注意:Stable Diffusion 会不断更新,因此您使用的不同版本可能会导致性能变化。

什么影响Stable Diffusion的性能?

首先,Stable Diffusion设置和模型

最常调整的设置(例如提示、否定提示、cfg 比例种子)不会对性能产生显着影响。生成狗或山地景观的图像需要相同的时间。即使选择的模型也往往只会导致生成时间的微小差异。看下面的图像,尽管有不同的提示和 cfg 比例,但它们的生成时间几乎完全相同。

其他设置(例如步长、分辨率采样方法)将影响Stable Diffusion的性能。

  • 步骤:调整步骤会影响生成图像所需的时间,但不会改变每秒迭代的处理速度。尽管许多用户选择 20 到 50 步,但将步数增加到 200 左右往往会在每次运行中产生更一致的结果。
  • 分辨率:图像分辨率不仅对性能影响最大,还会影响生成图像所需的 VRAM 量。出于基准测试目的,您可以使用 512×512 分辨率来确保与各种 GPU 型号的兼容性。
  • 采样方法(Euler、DPM等)。它会显着影响生成时间,某些选项所需的时间大约是其他选项的两倍。“Euler”和“Euler a”使用最广泛,并且往往提供最佳性能。其他方法(例如 DPM2)往往需要大约两倍的时间。出于 GPU 基准测试的目的,建议坚持使用 Euler 的变体以保持一致性。

其次是硬件

  • GPU :GPU 对速度和图像质量影响最大。更强大的 GPU 具有更高的内存带宽和更多的 VRAM,可以更快地生成稳定的扩散图像,尤其是在更高分辨率的情况下。GPU 上的 VRAM 数量决定了可以生成的最高分辨率图像。建议至少 8GB,更高分辨率需要 12GB 或更多。
  • CPU :虽然 GPU 处理大部分繁重的工作,但快速的 CPU 仍可以在较小程度上提高性能。具有更高时钟速度和更多内核的 CPU 可以提供较小的提升。
  • RAM :系统内存有助于向 GPU 提供数据,因此至少拥有 16GB RAM 可以确保最佳性能。更多 RAM(高达 32GB 或 64GB)可以进一步提高速度。

实现Stable Diffusion的最佳 GPU

要了解最适合Stable Diffusion的消费类 GPU,我们将检查这些 GPU 在其两个最流行的实现(其最新公开版本)上的Stable Diffusion性能。

许多Stable Diffusion实现通过计算“每秒迭代次数”或“ it/s ”来显示它们的工作速度。因此,为了检查Stable Diffusion性能,该指标是常用且很好的衡量标准。每秒迭代次数是通过将迭代次数除以生成图像所需的秒数来计算的。例如,如果生成具有 200 次迭代的图像需要 15 秒,则每秒的迭代次数约为13.3(即 200 次迭代除以 15 秒)。

首先,让我们看一下 Puget Systems 在 4000 系列 GPU 以及最近三代 NVIDIA 和 AMD RX 7900 XTX 和 RX 6900 XT的顶级 GPU 上测试的基准测试结果。

Automatic 1111性能

Automatic 1111是Stable Diffusion最常用的表现形式,通常可以在 NVIDIA GPU 上提供最佳性能。

NVIDIA 在这方面的表现明显优于 AMD。在 NVIDIA 的 GPU 列表中,RTX 4090 是获胜者,在Automatic 1111上提供了最高的性能结果。 甚至 RTX 3060 Ti 的速度也是 Radeon GPU 的两倍。只有 GTX 1080 Ti 比 RX 7900 XTX 差。

较新的 4000 系列 GPU 在图像生成速度方面具有明显的优势,同时性能与价格呈线性增长。RTX 4070 Ti 比之前的 RTX 3090 Ti 快约 5%,RTX 4060 Ti 比 3060 Ti 快近 43%,这表明了这一点。如果您仍然拥有 2000 或 1000 系列 GPU,即使是中档 4000 系列 GPU 也能提供显着的性能提升。

Shark性能测试

 

尽管 SHARK 不如Automatic 1111 常用,但许多 AMD 用户更喜欢它。看看上面的基准测试结果,原因就很清楚了。

RX 7900 XTX 的性能在 SHARK 的帮助下翻了四倍,每秒的迭代次数与运行 1111 的 RTX 4090 类似。同样,RX 6900 XT 的性能提升幅度甚至更大,达到了 1100%,但这仅使其与低端产品具有竞争力。已测试 NVIDIA GPU。

使用 SHARK 时,NVIDIA GPU 的性能比自动1111差约 30% ,尽管相对性能保持相同。

重要提示:正确使用Stable Diffusion非常重要,因为它会极大地影响性能。它可以从减少 30% 到大幅增加 1100%!上述GTX 1080 Ti的结果证明了这一点。在 Puget Systems 的本次测试中,它无法运行 SHARK。

总结

最突出的是各种Stable Diffusion实现之间性能的巨大差异。NVIDIA GPU 在Automatic 1111上提供最高性能,而 AMD GPU 在 SHARK 上工作效果最佳。顶级 GPU 各自的实现具有相似的性能。

如果您尚未决定使用特定的实现,NVIDIA 和 AMD 的高端 GPU 都提供了出色的性能。GeForce RTX 4090 和Radeon RX 7900 XTX 在Stable Diffusion的首选实现中均提供约 21 it/s 的速度。

值得注意的是,Stable Diffusion是一个不断发展的模型,具有一组工具。今天的运作方式与几个月前或未来的运作方式截然不同。 它的性能将在未来几个月和几年内发生变化。因此,本文中的性能结果可能会随着时间的推移而发生变化。作为明智的读者,我们希望您理解这些基准测试结果仅供参考。

如果您有兴趣在 RTX 4090 等顶级 GPU 上测试当前使用的Stable Diffusion实现的性能,请查看我们下面的服务。

赞奇云工作站- Stable Diffusion的云服务平台

Stable Diffusion 主要是为单 GPU 使用而设计的;然而,通过一些额外的软件和配置,它可以利用多个 GPU。通过将工作分散到多个 GPU 上,可以提高整体迭代速度。虽然大多数Stable Diffusion实现默认设计为在单个 GPU 上运行,但一种常用的实现(Automatic1111)可以选择以最少的附加配置启用多 GPU 支持。

运行Stable Diffusion算力越强,出图越快。显存越大,所设置图片的分辨率越高,所以一般的配置电脑还是带不动stable diffusion的,所以还是推荐选择赞奇云工作站,相比传统电脑无需一次性投入大量金钱,还可以随开随用,按需使用,高效助力设计。

赞奇云工作站不需要复杂的安装和部署,就能随时随地享受到行业领先配置的机器,高画质稳定输出作品,减少本地配置时间和成本投入,完全不同担心电脑卡顿、运行不动等问题。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/86889.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于YOLOV8模型的课堂场景下人脸目标检测系统(PyTorch+Pyside6+YOLOv8模型)

摘要:基于YOLOV8模型的课堂场景下人脸目标检测系统可用于日常生活中检测与定位课堂场景下人脸,利用深度学习算法可实现图片、视频、摄像头等方式的目标检测,另外本系统还支持图片、视频等格式的结果可视化与结果导出。本系统采用YOLOv8目标检…

uniapp 使用permission获取录音权限

使用前,需要先配置权限 android.permission.RECORD_AUDIO

Linux基础命令2

目录 基础命令 ln命令 grep命令 查看文本内容的五种方式 1.cat命令 2.more命令 3.less命令 4.head命令 5.tail命令 echo命令 alias命令 基础命令 ln命令 作用:创建链接文件 格式:ln 命令选项 目标文件 链接文件名 命令选项:-s…

在Eclipse中创建javaweb工程

新建动态web工程 点击project或other之后,如何快速找到Dynamic Web Project 填写工程名等详细信息 也许会出现下面的对话框 项目结构图

韩顺平java集合

遍历集合方式: public static void main(String[] args) {List<Object> arrayList new ArrayList<>();arrayList.add(1);arrayList.add(3);arrayList.add(111);Iterator<Object> iterator arrayList.iterator();while (iterator.hasNext()){System.out.pri…

黑客自学笔记

谈起黑客&#xff0c;可能各位都会想到&#xff1a;盗号&#xff0c;其实不尽然&#xff1b;黑客是一群喜爱研究技术的群体&#xff0c;在黑客圈中&#xff0c;一般分为三大圈&#xff1a;娱乐圈 技术圈 职业圈。 娱乐圈&#xff1a;主要是初中生和高中生较多&#xff0c;玩网恋…

【网络安全知识】Windows系统安全加固安全加固分析、概念及账户管理和认证权限

Windows系统安全加固分析 最小化方式安装 为了提高系统的安全性&#xff0c;采用最小化方式安装是最可靠的&#xff0c;只安装网络 服务所必需的组件。如果以后有新的服务需求&#xff0c;再安装相应的服务组件 &#xff0c;并及时进行安全设置。 系统加固工作 对Windows系统安…

Flutter对象状态动态监听Watcher

场景&#xff1a;当一个表单需要在表单全部或者特定项赋值后才会让提交按钮可点击。 1.普通实现方式&#xff1a; ///场景&#xff1a;检查[test11][test12][test13]均不为空时做一些事情&#xff0c;例如提交按钮变成可点击String? test11;String? test12;int? test13;///当…

containerd上基于dockerfile无特权构建镜像打包工具kaniko

目录 一、kaniko是什么 二、kaniko工作原理 三、kanijo工作在Containerd上 基于serverless的考虑&#xff0c;我们选择了kaniko作为镜像打包工具&#xff0c;它是google提供了一种不需要特权就可以构建的docker镜像构建工具。 一、kaniko是什么 kaniko 是一种在容器或 Kube…

linux/centos zookeeper 使用记录

配置cfg 下载zookeeper-3.4.14.tar.gz负责到centos服务器解压 /xxx/zookeeper-3.4.14/conf/下创建zoo.cfg文件并配置以下属性&#xff0c;/bsoft/zookeeperdata/目录先预先创建 tickTime2000 initLimit10 syncLimit5 dataDir/bsoft/zookeeperdata/ clientPort2181zk启动/重启/关…

servlet介绍,tomcat容器下载启动

1.1servlet是什么&#xff1f; servlet是一种java程序类&#xff0c;这些类继承了httpservlet类。这些类没有main方法&#xff0c;有两大对象request请求&#xff0c; response响应对象。这些类需要servlet容器才可以运行。 servlet 2.5 servlet 3.0 WEB-INF/web.xml <…

数据库——事务,事务隔离级别

文章目录 什么是事务?事务的特性(ACID)并发事务带来的问题事务隔离级别实际情况演示脏读(读未提交)避免脏读(读已提交)不可重复读可重复读防止幻读(可串行化) 什么是事务? 事务是逻辑上的一组操作&#xff0c;要么都执行&#xff0c;要么都不执行。 事务最经典也经常被拿出…

养号自动化,指纹浏览器和RPA机器人解除烦恼

在这个充满科技魔力的时代&#xff0c;社交媒体已经成为人们生活的一部分&#xff0c;而Facebook更是我们分享欢乐、联络亲友的重要平台。然而&#xff0c;随之而来的是一个棘手的问题&#xff1a;如何保持账号的活跃度&#xff0c;而又不被沉重的养号工作压垮&#xff1f;别担…

es和数据库同步方案

5.5 课程信息索引同步 5.5.1 技术方案 通过向索引中添加课程信息最终实现了课程的搜索&#xff0c;我们发现课程信息是先保存在关系数据库中&#xff0c;而后再写入索引&#xff0c;这个过程是将关系数据中的数据同步到elasticsearch索引中的过程&#xff0c;可以简单成为索引…

C语言刷题(13)

第一题 第二题 第三题 第四题 第五题 第六题 第七题 注意 1.nsqrt(n)&#xff0c;sqrt本身不会将n开根 2.初始化已经令sumn了&#xff0c;故相加的个数为m-1次

SpringMVC之@RequestMapping注解

文章目录 前言一、RequestMapping介绍二、详解&#xff08;末尾附源码&#xff0c;自行测试&#xff09;1.RequestMapping注解的位置2.RequestMapping注解的value属性3.RequestMapping注解的method属性4.RequestMapping注解的params属性&#xff08;了解&#xff09;5.RequestM…

ubuntu执行jmeter端口不够用报错(Address not available)

ubuntu执行jmeter端口不够用报错(Address not available) 解决方案 // 增加本地端口范围 echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range// 启用快速回收TIME_WAIT套接字 sudo sysctl -w net.ipv4.tcp_tw_recycle 1// 启用套接字的重用 sudo sysctl -w net.ipv4…

第一章 初识Linux(含VMware安装Ubuntu、CentOS、Windows、FinalShell、快照)

目录 一、 课程的介绍  1.为什么要学习Linux  2.课程的安排  3.如何学习Linux 二、操作系统概述  1.学习目标  2.计算机的硬件和软件  3.什么是操作系统  4.常见的操作系统  5.本小节的总结 三、初识Linux  1.学习目标  2.Linux的诞生  3.Linux的内核  …

LoRA继任者ReLoRA登场,通过叠加多个低秩更新矩阵实现更高效大模型训练效果

论文链接&#xff1a; https://arxiv.org/abs/2307.05695 代码仓库&#xff1a; https://github.com/guitaricet/peft_pretraining 一段时间以来&#xff0c;大模型&#xff08;LLMs&#xff09;社区的研究人员开始关注于如何降低训练、微调和推理LLMs所需要的庞大算力&#xf…

APEX内置验证与授权管理

参考博客&#xff1a;&#xff08;真的很好的教程&#xff0c;感谢&#xff01;&#xff09; 09技术太卷我学APEX-定制页面及导航菜单权限_白龙马5217的博客-CSDN博客https://blog.csdn.net/html5builder/article/details/128816236?spm1001.2014.3001.5501 1 应用程序安全性…