大模型训练及推理【硬件选型指南】及 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.调用成功/失败的处…

大模型日报2024-04-22

大模型日报 2024-04-22 大模型资讯 Mistral与Mixtral大型语言模型对比:7B、8x7B及8x22B 摘要: 最近,IT新闻频道广泛报道了新公开的Mixtral 8x22B模型,该模型在多项基准测试中超越了ChatGPT 3.5版本,尤其在MMLU等测试中表现突出。本…

Rust语言之简单涉猎

官方文档 简介 Rust 是一种静态类型语言。静态类型语言是指在编译时对变量和表达式进行类型检查,以确保类型的正确性。在 Rust 中,每个变量都需要在声明时指定其类型(也支持隐式声明,根据值判断),并且在编译时会进行类型检查&am…

更全面的Embedding介绍

"Embedding"这个词在不同的上下文中有多种含义,以下是一些常见的解释: 计算机科学和人工智能:在机器学习和自然语言处理中,embedding是一种将词汇或短语映射到向量空间的技术。这些向量可以捕捉到词汇的语义含义&#x…

java中spring底层核心原理解析(2)

相关系列 java中spring底层核心原理解析(1)-CSDN博客 推断构造方法 spring在基于某个类生成bean的过程中,需要利用该学业有成的构造方法来实例化得到一个对象,但是如果一个类存在多个构造方法,spring会使用哪个呢? …

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…

设计模式|代理模式(Proxy Pattern)

文章目录 什么是代理模式举例结构优缺点优点缺点代码示例与代理模式相近的设计模式什么是代理模式 代理模式(Proxy Pattern)是一种结构型设计模式,它允许你提供一个间接访问对象的方式,以控制对对象的访问。这种模式通常在不改变原始类代码的情况下,添加一些额外的逻辑或…

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、虚拟化类型 ①全虚拟化: …

MySQL-数据目录

一、MySQL的主要目录结构(MySQL 8) [rootlocalhost ~]# find / -name mysql find: ‘/proc/30845’: 没有那个文件或目录 find: ‘/proc/30855’: 没有那个文件或目录 /etc/logrotate.d/mysql /etc/selinux/targeted/active/modules/100/mysql /etc/sel…

国内开通chatgpt plus会员方法

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

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

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

【26考研】考研备考计划4.22开始

A海海: 408:重中之重,和数学同等地位!越早开始越好!前期直接跟着王道视频课学习,教材直接用王道四本书,顺序结构的话按照数据结构-计算机组成原理-操作系统-计算机网络的顺序来学习。刚开始学会感觉很吃力很难&#xf…

AutoCodeRover: Autonomous Program Improvement

AutoCodeRover:自主程序改进 Abstract 过去几十年来,研究人员在软件开发过程自动化方面取得了重大进展。大型语言模型 (LLM) 的最新进展对开发过程产生了重大影响,开发人员可以使用基于 LLM 的编程助手来实现自动化编码。然而,软…

【Ne4j图数据库入门笔记2】数据导入详解

2.1 导入 CSV 文件 Cypher中 LOAD CSV 的命令允许我们指定文件路径、标头与否、不同的值分隔符以及 Cypher 语句,用于我们如何在图形中对表格数据进行建模。 CSV 是逗号分隔值的文件,通常在 Excel 或其他电子表格工具中查看。可以有其他类型的值作为分…

spring.factories中配置ApplicationContextInitializer实现类却不起作用

自定义了一个ApplicationContextInitializer的实现类如下 public class MyApplicationContextInitializer implements ApplicationContextInitializer<ConfigurableApplicationContext> {Overridepublic void initialize(ConfigurableApplicationContext applicationCon…

Vue3 Vite配置环境变量

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

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

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

vue3+leaflet开发地图入门教程(超级详细)

vue3leaflet开发地图01 1.离线地图下载 ​ 离线地图下载器有很多&#xff0c;网络上也很多文档&#xff0c;这里不再详细说明&#xff0c;根据项目要求下载对应的瓦片地图就好 2.leaflet官网及地图加载 ​ Leaflet - 一个交互式地图 JavaScript 库 (leafletjs.cn) ​ 官网…