问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

提升 AI 性能的 GPU 内存基础知识

创作时间:
作者:
@小白创作中心

提升 AI 性能的 GPU 内存基础知识

引用
nvidia
1.
https://developer.nvidia.com/zh-cn/blog/?p=12709

生成式 AI彻底改变了人们将想法变为现实的方式,而代理 AI 代表着这一技术变革的下一次飞跃。通过利用复杂的自主推理和迭代规划,AI 智能体可以非常高效地处理复杂的多步骤问题。

随着 AI 不断革新各行各业,对在本地运行 AI 模型的需求激增。无论是开发 AI 还是使用 AI,在本地运行 AI 模型都具有许多优势,包括增强隐私、降低延迟以及离线工作的能力。

本地 AI 正在改变组织的 AI 开发和部署方式。通过在本地处理数据,开发者能够继续进行 AI 实验和原型设计,而无需付出持续使用云的代价。本地 AI 成为创新和原型的测试平台,可实现快速迭代和想法测试。与此同时,云基础架构和数据中心可处理更密集的工作负载和大规模部署。

在本地运行 AI 模型还可满足某些行业特定用例的独特需求。在医疗健康领域,它可以实现安全的患者数据分析和快速诊断。金融机构利用该平台进行实时欺诈检测和风险评估。制造商可从即时质量控制和预测性维护中获益。

为了更好地利用这些优势,用户需要确保其硬件 (尤其是 GPU) 能够胜任相应任务。此时,GPU 内存大小将成为一个关键考虑因素,因为它直接影响您可以在本地运行的模型的大小和复杂性。模型越大,所需的内存越多。

AI 模型中的参数精度平衡

要计算所需的 GPU 显存大小,必须了解两个关键概念:参数和精度。

参数是模型中用于确定其行为的学习值。将参数视为 AI 模型的知识。就像模型在学习过程中所做的无数细微调整一样。例如,在语言模型中,参数有助于理解词语和概念之间的关系。模型的参数越多,它可以理解的模式越复杂,但所需的内存也越多。

精度是指在内存中存储这些参数时保留的细节级别。这就像在常规尺子和超精度科学仪器之间进行选择。更高的精度 (例如 32 位或 FP32) 就像使用卡尺或千分尺。它可以提供更精确的测量结果,但在写下更多数字时,会占用更多空间。较低精度 (例如 16 位或 FP16) 等同于使用简单的尺子。这可以节省空间,但可能会丢失一些微小的细节。

模型所需的总显存取决于它有多少参数,以及每个参数的存储精确度。在参数数量和精度之间选择适当的平衡至关重要,因为参数越多,模型就越智能,同时还需要更多内存。另一方面,精度降低可节省内存,但可能会略微降低模型的功能。

适用于 AI 模型的 GPU 显存

要估算所需的 GPU 显存,请先查找参数数量。一种方法是访问 NVIDIA NGC 目录并查看型号名称或型号显卡。许多模型的名称中都包含参数数量;例如,GPT-3 175B 表示有 175 亿个参数。NGC 目录还提供有关模型的详细信息,包括 Model Architecture 或 Specifications 部分中的参数数量。

接下来,为了确定预训练模型的精度,您可以检查模型卡,以获取有关所使用数据格式的特定信息。FP32 (32 位浮点) 通常首选于训练或在对最高精度至关重要时使用。它提供最高级别的数值精度,但需要更多的内存和计算资源。FP16 (16 位浮点) 可以在性能和准确性之间实现良好平衡,尤其是在搭载Tensor Core的NVIDIA RTX GPU上。与 FP32 相比,它在保持较高准确性的同时,可将训练和推理速度提升高达 2 倍。


图 1、为更大限度地提高 GPU 效率,与 FP32 等更大的数据格式相比,INT4 和 FP8 等更小的数据格式可减少显存占用

INT8 (8 位整数) 常用于在边缘设备上进行推理,或优先考虑速度和效率。与 FP16 相比,它的显存占用率可提升高达 4 倍,计算性能可提升 2 倍,非常适合在资源受限的环境中进行部署。

FP4 (4 位浮点) 是一种新兴精度格式,在 AI 应用中变得越来越普遍。这是朝着更高效的 AI 计算迈出的重要一步,可在保持合理准确性的同时大幅降低内存需求和计算需求。

检查模型的显卡时,查找“precision”、“data format”或“quantization”等术语,以识别模型使用的格式。某些模型可能支持多种 precision 格式,或使用混合 precision 方法结合不同的格式来优化性能和准确性。

通过将参数数量乘以每个参数的字节数 (FP32 为 4,FP16 为 2),然后将此数字翻倍以考虑优化器状态和其他开销,可以计算出所需 GPU 显存的粗略估计值。例如,FP16 精度下的 70 亿参数模型大约需要 28GB 的 GPU 显存 (7 亿 x 2 字节 x 2)。


图 2、在 FP16 中运行具有 7 亿个参数的 Llama 2 至少需要 28 GB 的显存,因此高容量 GPU 对于高级 AI 工作负载至关重要

NVIDIA RTX GPU 可提供在本地运行模型所需的高性能。NVIDIA RTX 6000 Ada Generation GPU具有高达 48 GB 的 VRAM,可为大规模 AI 应用提供充足的显存。此外,RTX GPU 配备专用的 Tensor Cores,可显著加速 AI 计算,非常适合本地 AI 开发和部署。

通过量化减少 AI 足迹

对于希望在显存受限的 GPU 上运行更大模型的开发者而言,量化技术可能是一种颠覆性技术。量化会降低模型参数的精度,显著降低内存需求,同时保持模型的大部分准确性。NVIDIA TensorRT-LLM提供先进的量化方法,可将模型压缩到 8-bit 甚至 4-bit 精度,从而能够以更少的 GPU 显存运行更大的模型。

入门指南

随着 AI 不断渗透到我们的日常生活中,在功能强大的工作站上本地运行模型的能力变得越来越重要。您可以在搭载 NVIDIA AI Workbench的 NVIDIA RTX 助力的 AI 工作站上开始使用,将 NVIDIA NIM 微服务等 AI 功能引入桌面,在游戏、内容创作等领域发掘新的可能性。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号