大模型训练及推理【硬件选型指南】及 GPU 通识

我们在做大模型应用部署时(如训练、微调、RAG),往往需要在前期就分析好硬件选型指标,或者我们给客户报方案之前,可能你已经有了一个方案,但是由于实践经验缺乏,不知道在硬件上该如何评估并上报。本文将在这些方面给予一些参照。

💡 这节课会带给你

  • ​什么是 GPU 以及 CUDA 核心和 Tensor 核心的介绍

  • 大模型应用中如何选择GPU和云服务厂商,追求最高性价比

  • AI 领域的 GPU 对比

  • 如何部署自己 fine-tune 的模型,向业务提供高可用推理服务

  • GPU 显卡排名

  • 一些相关参考链接

初识 GPU

硬件选型

当我们为模型训练及推理做硬件选型时,NVIDIA 几乎是唯一选择。这是一家全球知名的图形处理器(GPU)公司,成立于 1993 年。因为在 GPU 领域,尤其 AI 领域芯片的垄断性优势,其创始人黄仁勋被坊间称为「黄教主」

  • NVIDIA 英伟达官网

    https://www.nvidia.cn/

  • NVIDIA Studio 设计本和台式电脑对比

    https://www.nvidia.cn/studio/compare-gpus/

  • NVIDIA 显卡排行榜

    https://technical.city/zh/video/nvidia-rating

什么是 GPU

Graphical Processing Units (GPUs)

  • 图形处理单元(GPU)是一种功能强大的电子芯片,用于在沉浸式视频游戏、电影和其他视觉媒体中呈现丰富的 2D/3D 图形和动画

  • 因其超越 CPU 的并行矩阵运算性能,所以也被广泛应用于人工智能相关的各种系统,包括机器视觉、NLP、语音识别、自动驾驶等

CUDA 核心和 Tensor 核心

CUDA 核心

  • 是 NVIDIA 开发的并行计算平台和编程模型,用于 GPU 上的通用计算,就像是万能工人,可以做很多不同的工作

  • 适合游戏和图形渲染、天气预测、电影特效等场景

案例 1:视频渲染 当一个电影制片公司决定制作一部具有高度视觉效果的 3D 电影时,他们需要大量的计算能力来渲染每一帧。这里,CUDA 核心非常有用,因为它们能够处理大量的细节,如光线追踪、纹理和阴影。例如,当一束光从一个光源反射到一个物体上,然后反射到摄像机上,CUDA 核心可以用来计算这个光线路径上的所有细节,确保最终的图像看起来真实并且美观。

Tensor 核心

  • 中文叫:张量核心

  • 专门设计用于深度学习中的矩阵运算,加速深度学习算法中的关键计算过程

  • 适合语音助手、人脸识别等场景

案例 2:面部识别 安全系统、智能手机和许多应用程序现在都使用面部识别技术。这需要通过深度学习模型来识别人的面部特征。Tensor 核心在这里发挥关键作用,它们可以迅速地处理神经网络中的大量矩阵乘法和加法,确保面部识别既准确又快速。

AI 领域常用 GPU

AI 常用 GPU 价格排序

这个表格依据价格进行排序,价格从低到高。更多排名看后面《NVIDIA显卡排行榜》章节介绍。

  • 有些在京东就能买到

  • 美国商务部限制 GPU 对华出口的算力不超过 4800 TOPS 和带宽不超过 600 GB/s,导致最强的 H100 和 A100 禁售。黄教主随后推出针对中国市场的 A800 和 H800

  • 参考:
    • 英伟达 A100 和 H100 已被禁止向中国供货
    • 50 亿美元,算力芯片迎来狂欢,腾讯字节抢购英伟达 A800 订单

H100 与 A100

H100 比 A100 快多少?

16-bit 推理快约 3.5 倍,16-bit 训练快约 2.3 倍。

参考资料

https://timdettmers.com/2023/01/30/which-gpu-for-deep-learning/

根据场景选择GPU

以下是我们为您提供的,基于显卡 4090 上的 chatglm 和 chatglm2 模型的 Fine tuning 实验数据概览:

模型

数据条数

时长

技术

chatglm

9999

1:42:46

pt2

chatglm

39333

6:45:21

pt2

chatglm

9999

1:31:05

Lora

chatglm

39333

5:40:16

Lora

chatglm2

9999

1:50:27

pt2

chatglm2

39333

7:26:25

pt2

chatglm2

9999

1:29:08

Lora

chatglm2

39333

5:45:08

Lora

llm-utils 上一些选型的建议

  • Falcon 是目前为止 huggingface 上排行榜第一的模型

根据不同的使用情境,以下是使用的建议GPU:

模型

显卡要求

推荐显卡

Running Falcon-40B

运行 Falcon-40B 所需的显卡应该有 85GB 到 100GB 或更多的显存

See Falcon-40B table

Running MPT-30B

当运行 MPT-30B 时,显卡应该具有80GB的显存

See MPT-30B table

Training LLaMA (65B)

对于训练 LLaMA (65B),使用 8000 台 Nvidia A100 显卡。

Very large H100 cluster

Training Falcon (40B)

训练 Falcon (40B) 需要 384 台具有 40GB 显存的 A100 显卡。

Large H100 cluster

Fine tuning an LLM (large scale)

大规模微调 LLM 需要 64 台 40GB 显存的 A100 显卡

H100 cluster

Fine tuning an LLM (small scale)

小规模微调 LLM 则需要 4 台 80GB 显存的 A100 显卡。

Multi-H100 instance

不同情况推荐

划重点:

  • 对于本地个人研发项目,GeForce RTX 4090 等消费级 GPU 足以满足中等规模的需求。

  • 对于公司的大规模数据和复杂模型,推荐使用如 NVIDIA A100 的高性能 GPU。

  • 数据规模小时,可考虑预算内的 A10 或 T4 型号。

  • 如果追求性价比,可以选择把 4090 显卡搭建服务器使用,也可以选择市面的第三方服务,比如:AutoDL 的 4090 服务

1、大模型内存选择

大模型训练需要高性能的计算机硬件来保证训练的效率和速度。建议选择具有高速的ECC或DDR5内存。现在训练时一般在 GLM 、 LLaMA 等大模型的基础上进行训练,国内会选择 A800/H800 x 8 的 GPU 配置,与此同时内存一般会选择相似大小以提升效率,常规选择 512 内存。

2、大模型所需磁盘

大模型训练需要存储大规模的数据集和模型参数,因此需要足够的存储资源来保证数据能够快速地被读取和处理。建议选择具有大容量、高速的存储设备,如 SSD 或 NVMe 固态硬盘。一般 4T-8T 不等。

3、推荐配置参考

GPU算力平台:大模型训练、自动驾驶、深度学习解决方案。

  • A100/A800大模型训练配置分享

    • 平台:SYS-420GP-TNAR(4U)

    • CPU:2*8358(32核心,铂金版,2.6GHz 超频 3.4GHz)

    • GPU:NVIDIA HGX A100/A800(80G SXM)

    • 内存:32*64GB DDR4

  • H100/H800大模型训练配置分享

    • 平台:SYS-821GE-TNHR(8U)

    • CPU:2*8468(48核心,铂金版,2.1GHz 超频 3.8GHz)

    • GPU:NVIDIA HGX H100/H800(80G SXM5)

    • 内存:32*64GB DDR5

物理机 vs. 云服务

划重点:

  • 如果经常做微调实验,有自己的物理机会方便很多很多

  • 提供推理服务,首选云服务

  • 如果有自建机房或 IDC,请随意

云服务厂商对比

国内主流

  • 阿里云:https://www.aliyun.com/product/ecs/gpu

  • 腾讯云:https://cloud.tencent.com/act/redirect?page=gpu-study

  • 火山引擎:www.volcengine.com/product/gpu

国外主流

  • AWS:aws.amazon.com

  • Vultr:www.vultr.com

  • TPU:cloud.google.com/tpu
     

TPU 是 Google 专门用于加速机器学习的硬件。它特别适合大规模深度学习任务,通过高效的架构在性能和能源消耗上表现出色。

它的优点和应用场景

  1. 高性能和能效: TPU 可以更快地完成任务,同时消耗较少的能源,降低成本。

  2. 大规模训练: TPU 适用于大规模深度学习训练,能够高效地处理大量数据。

  3. 实时推理: 适合需要快速响应的任务,如实时图像识别和文本分析。

  4. 云端使用: Google Cloud 提供 TPU 服务,允许用户根据需求使用,无需购买硬件。

适用于图像处理、自然语言处理、推荐系统等多个领域。在国外,科研机构、大公司和初创企业普遍使用 TPU。

NVIDIA GPU 在主流厂商的价对比

下面是对两款 NVIDIA GPU 在火山引擎、阿里云、腾讯云的价格进行对比:

  • A100:在云服务中,A100 是顶级的企业级 GPU,适用于高性能计算需求。

  • T4:相比之下,T4 更为经济,适合日常模型微调和推理任务。

NVIDIA A100:

云服务提供商

GPU 型号

CPU 核心数

内存(GiB)

价格(元/小时)

火山引擎

A100

14 核

245

40.39

阿里云

A100

16 vCPU

125

34.742

腾讯云

A100

16 核

96

28.64

NVIDIA T4:

云服务提供商

GPU 型号

CPU 核心数

内存(GiB)

价格(元/小时)

阿里云

T4

4 vCPU

15

11.63

火山引擎

T4

4 核

16

11.28

腾讯云

T4

8 核

32

8.68

算力平台

主要用于学习和训练,不适合提供服务。

  • Colab:谷歌出品,升级服务仅需 9 美金。colab.google.com

  • Kaggle:免费,每周 30 小时 T4,P100 可用。www.kaggle.com

  • AutoDL:价格亲民,支持 Jupyter Notebook 及 ssh,国内首选。www.autodl.com

建议:若需高速下载,尤其依赖于 GitHub 或 Docker 官方镜像,建议选择国外服务器。

NVIDIA显卡排行榜

此网站能实时对比各种型号显卡

https://technical.city/zh/video/nvidia-rating

Top 100

下面截图给大家 Top 100,详细请看原文链接。

参考链接

  • GPU选型指南

    https://gpus.llm-utils.org/cloud-gpu-guide/

  • ⚙️ GPU 通识及硬件选型

    https://www.yuque.com/lhyyh/ai/srzk2d1mt5gvx08p

  • llm-utils

    https://gpus.llm-utils.org/nvidia-h100-gpus-supply-and-demand/

  • 显卡排行榜

    https://technical.city/zh/video/nvidia-rating

  • Tim Dettmers

    https://timdettmers.com/2023/01/30/which-gpu-for-deep-learning/

  • 大模型训练要啥样配置

    https://blog.csdn.net/bestpasu/article/details/134096396

AI 大模型全栈知识库👇

https://www.yuque.com/lhyyh/ai

我是一名资深 AI 全栈工程师,持续分享 AI 相关知识,感兴趣的小伙伴欢迎关注并一起学习、交流💪

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CTF练习-BUUCTF(1~25)

文章目录 Crypto题目1 一眼就解密题目解题思路flag 题目2 md5题目解题思路flag 题目3 Url编码题目解题思路flag 题目4 看我回旋踢题目解题思路1解题思路2flag 题目5 摩丝题目解题思路flag 题目6 passwd题目解题思路flag 题目7 变异凯撒题目解题思路flag 题目8 Quoted-printable…

AJAX——封装_简易axios

1.简易axios_获取身份列表 需求:基于Promise XHR 封装 myAxios函数,获取省份列表展示 步骤: 1.定义 myAxios函数,接收配置对象,返回Promise对象 2.发起XHR请求,默认请求方法为GET 3.调用成功/失败的处…

Python与数据库连接

新建表boss create table 创建表 Code import pymysqlcon pymysql.connect(hostlocalhost,\userroot,\password,\port3306,\dbbusiness) cursorcon.cursor() cursor.execute(create table if not exists boss(id int auto_increment primary key,name varchar(20)not null…

WPF2 样式布局

样式布局 WPF中的各类控件元素, 都可以自由的设置其样式。 诸如: 字体(FontFamily) 字体大小(FontSize) 背景颜色(Background) 字体颜色(Foreground) 边距(Margin) 水平位置(HorizontalAlignment) 垂直位置(VerticalAlignment) 等等。 而样式则是组织和重用以上的重要工具。…

Docker基础+虚拟化概念

目录 一、虚拟化简介 1、虚拟化概述 2、cpu的时间分片(cpu虚拟化) 3、cpu虚拟化性性能瓶颈 4、虚拟化工作 4.1虚拟机工作原理 4.2两大核心组件:QEMU、KVM 4.2.1QEMU: 4.2.2KVM: 5、虚拟化类型 ①全虚拟化: …

国内开通chatgpt plus会员方法

ChatGPT镜像 今天在知乎看到一个问题:“平民不参与内测的话没有账号还有机会使用ChatGPT吗?” 从去年GPT大火到现在,关于GPT的消息铺天盖地,真要有心想要去用,途径很多,别的不说,国内GPT的镜像…

微软如何打造数字零售力航母系列科普02 --- 微软低代码应用平台加速企业创新 - 解放企业数字零售力

微软低代码应用平台推动企业创新- 解放企业数字零售力 微软在2023年GARTNER发布的魔力象限图中处于头部领先(leader)地位。 其LCAP产品是Microsoft Power Apps,扩展了AI Builder、Dataverse、Power Automate和Power Pages,这些都包…

Vue3 Vite配置环境变量

Vue3 Vite配置环境变量 相关文档配置.env文件vite.config.jspackage.json 使用 相关文档 Vite 官方中文文档:https://cn.vitejs.dev/环境变量和模式:https://cn.vitejs.dev/guide/env-and-mode.html#env-file在配置中使用环境变量:https://c…

SCADA系统通过巨控GRM模块实现OPC协议远程监控PLC

SCADA系统和PLC不在同一个地方,需要远程监控和控制PLC,可以通过巨控GRM模块来实现,通过OPC协议转巨控服务器远程读写PLC寄存器,从而完成远程监控PLC。 要实现SCAKDA系统远程监控PLC,关键是要实现SKADA能通过互联网访问…

都2024 年了,可以卸载的VS Code 插件

在 VS Code 中,庞大的插件市场提供了丰富多样的扩展功能,以增强编码体验和效率。然而,如果你安装了很多插件,就可能会导致: 性能下降:过多的插件可能导致 VS Code 的启动速度变慢,特别是在启动或…

[2021最新]大数据平台CDH存储组件kudu之启用HA高可用(添加多个master)

今天在做kudu高可用的时候没有参考官网,直接按照常规方式(添加角色—>编辑属性—>启动)结果发现报错?然后参考了一下文档之后发现这玩意儿还有点玄学,做一下记录。 1.添加两个master。kudu master有leader和foll…

用云手机运营TikTok有什么好处?

在数字化浪潮的推动下,社交媒体平台正重塑商业推广与品牌建设的面貌。TikTok,这款全球热门的短视频应用,已经吸引了亿万用户的瞩目。对于出海电商和品牌推广而言,借助云手机运营TikTok,能够解锁更多潜在可能&#xff0…

【Linux开发 第十二篇】搭建JavaEE环境

搭建开发环境 搭建javaEE环境 搭建javaEE环境 在Linux下开发JavaEE需要安装软件包: 安装jdk 安装步骤: 在opt目录下创建jdk目录通过xftp上床到jdk目录中进入到jdk目录中,解压jdk压缩包在/usr/local下创建java目录将解压完成的jdk文件移动…

【MySQL | 第六篇】数据库三大范式

文章目录 6.数据库设计三大范式6.1第一范式6.2第二范式6.3第三范式6.4反范式设计 6.数据库设计三大范式 6.1第一范式 第一范式(1NF):确保每列的原子性(强调的是列的原子性,即列不能够再分成其他几列)。实际上,第一范式…

react学习(一)之初始化一个react项目

React 是一个用于构建用户界面(UI)的 JavaScript 库,用户界面由按钮、文本和图像等小单元内容构建而成。React 帮助你把它们组合成可重用、可嵌套的 组件。从 web 端网站到移动端应用,屏幕上的所有内容都可以被分解成组件&#xf…

在React Router 6中使用useRouteLoaderData钩子获取自定义路由信息

在 React Router 6 中怎么像vueRouter一样,可以在配置路由的时候,定义路由的元信息(附加信息)?答案是可以的。稍有些复杂。核心是通过为每个路由定义了一个 loader 函数,用于返回自定义的路由信息,然后通过useRouteLoaderData 钩子…

虚拟机扩容方法

概述 我的虚拟机开始的内存是40G,接下来要扩成60GB 扩容步骤 步骤1 步骤2 步骤3 修改扩容后的磁盘大小,修改后的值只可以比原来的大,修改完成后点击扩展,等待扩展完成 步骤4 虽然外面扩展成功,但是新增的磁盘空间虚拟机内部还…

GHO文件安装到Vmware的两种姿势

1、使用 Ghost11.5.1.2269 将gho转换为vmdk文件(虚拟机硬盘),Vmware新建虚拟机自定义配置,然后添加已有的虚拟硬盘文件。 注意ghost的版本,如果你是用Ghost11.5备份的gho文件,再用Ghost12把gho文件转换为vmdk,则vmdk文…

Sound Siphon for Mac:音频处理与录制工具

Sound Siphon for Mac是一款专为Mac用户设计的音频处理与录制工具,以其出色的性能、丰富的功能和简便的操作而备受赞誉。 Sound Siphon for Mac v3.6.8激活版下载 该软件支持多种音频格式,包括MP3、WAV、AAC、FLAC等,用户可以轻松导入各种音频…

镜像VS快照详细对比

不同之处 依赖性: 快照通常依赖于原始系统的状态或之前的快照。 而镜像是独立的,包含了所需的全部数据。 目的: 镜像用于创建或恢复整个系统,适用于系统迁移、备份或恢复等场景。 快照用于数据恢复,可以快速回滚到之前…