为什么贪婪的 GPU需要快速的对象存储?

news2024/11/24 1:42:16

一个链条的力量取决于其最薄弱的环节 - 同样,您的AI/ML基础设施的速度也只有您的最慢组件那么快。如果您使用GPU训练机器学习模型,那么您的薄弱环节可能是您的存储解决方案。结果就是我所说的“饥饿GPU问题”。

饥饿GPU问题发生在您的网络或存储解决方案无法快速向您的训练逻辑提供训练数据,以至于无法充分利用您的GPU时。症状相当明显。如果您在监控您的GPU,那么您会注意到它们从未接近充分利用。如果您已经对您的训练代码进行了 instrumentation,那么您会注意到总的训练时间主要由I/O主导。
不幸的是,对于那些正在处理这个问题的人来说,有一个坏消息。让我们来看看在使用GPU方面的一些进展,以了解这个问题在未来几年将如何变得更糟。

GPUs正在变得更快

GPU正在变得更快。不仅原始性能在提高,内存和带宽也在增加。让我们来看看NVIDIA最新GPU的三个特点:A100、H100和H200。

GPU性能内存内存带宽
A100624 TFLOPS40GB1,555GB/s
H1001,979 TFLOPS80GB3.35TB/s
H2001,979 TFLOPS141GB4.8TB/s

(注:上述表格使用与A100的PCIe(外围组件互连 Express)插槽解决方案和H100和H200的SXM(服务器PCI Express模块)插槽解决方案相对应的统计数据。SXM的统计数据对于A100不存在。关于性能,比较时使用了浮点16张量核心的统计数据。)

上述统计数据中的一些观察值得关注。首先,H100和H200的性能(1,979 TFLOPS)相同,是A100的3.17倍。H100的内存是A100的两倍,内存带宽增加了同样多 - 这是有意义的,否则GPU会饿死自己。H200可以处理高达141GB的内存,它的内存带宽也随着内存的增加而成比例地增加。
让我们更详细地探讨这些统计数据,并讨论它们对机器学习意味着什么。

  • 性能 - 一个teraflop(TFLOPS)是一万亿(10^12)浮点运算每秒。这是一个后面跟着12个零的1(1,000,000,000,000)。在模型训练期间发生的浮点运算包括简单的张量数学以及损失函数(即梯度)的一阶导数。然而,由于统计数据中的TFLOPs与I/O需求之间的相对比较,可以进行一些估计。从上面的统计数据来看,我们可以看到,H100和H200,这两者都表现出1,979 TFLOPS的性能,速度快了3倍 - 如果其他一切都能跟上,理论上数据处理速度可以提高3倍。

  • GPU内存 - 也称为视频内存或图形内存。GPU内存与系统的 main memory(RAM)是分开的,专门用于处理图形卡执行的密集图形处理任务。GPU内存决定了训练模型时的批量大小。在过去,当将训练逻辑从CPU迁移到GPU时,批量大小会减小。然而,随着GPU内存与CPU内存容量相当,GPU训练的批量大小将会增加。当性能和内存容量同时增加时,结果是更大的请求,每个吉字节的数据处理速度更快。

  • 内存带宽 - 将GPU内存和计算核心连接的“高速公路”。它决定了每单位时间内可以转移多少数据。正如更宽的高速公路可以让更多的汽车在给定的时间内通过一样,更高的内存带宽可以让更多的数据在内存和GPU之间移动。正如你所看到的,这些GPU的设计者增加了每个新版本内存带宽与内存的比例,因此芯片内部的数据显示不会成为瓶颈。

未来展望

2023年8月,NVIDIA宣布了其下一个用于加速计算和生成AI的GPU平台 - Grace Hopper超级芯片平台。这个新的平台使用了Grace Hopper超级芯片,通过NVIDIA NVLink可以连接额外的超级芯片,使它们在模型训练和推理时共同工作。
虽然所有关于Grace Hopper超级芯片的规格都代表了比之前芯片的改进,但对于AI/ML工程师来说,最重要的创新是其统一的内存。Grace Hopper让GPU完全访问CPU的内存。这对于过去希望使用GPU进行训练的工程师来说很重要。因为过去,工程师如果希望使用GPU进行训练,首先必须将数据拉入系统内存,然后从那里将数据移动到GPU内存。Grace Hopper消除了使用CPU内存作为数据到达GPU的回弹缓冲区的需要。
对于负责升级GPU并确保其他一切能够跟上进度的任何人来说,将几项关键的GPU统计数据以及Grace Hopper的能力进行简单比较,可能有点令人不安。一个存储解决方案绝对需要以更快的速度服务数据,以跟上这些GPU的改进。让我们来看一个常见的老虎GPU问题的解决方案。

一个常见的解决方案

这个问题有一个常见且明显的解决方案,不需要组织替换或升级现有的存储解决方案。您可以保持现有的存储解决方案不变,以便您可以利用贵组织所需的所有企业功能。这个存储解决方案很可能是包含贵组织所有非结构化数据的数据湖——因此,它可能相当大,总体拥有成本是一个考虑因素。它还具有许多为冗余、可靠性和安全性启用的特性,所有这些都会影响性能。
然而,可以做的就是在一个与计算基础设施相同的数据中心设置一个存储解决方案——理想情况下,这个解决方案应该与计算集群相同。确保您拥有高速网络和最佳的存储设备。从那里,只复制用于ML训练的数据。
亚马逊最近宣布的亚马逊S3 Express One Zone体现了这种方法。它是一种优化高吞吐量和小延迟的桶类型,仅限于单个可用区(没有复制)。亚马逊的意图是让客户用它来持有需要高速访问的数据的副本。因此,它是为模型训练而专门设计的。根据亚马逊的说法,它提供的是S3标准数据的10倍访问速度,成本是S3标准8倍。有关我们对亚马逊S3 Express One Zone的评估,请内容。

MinIO解决方案

我上面概述的常见解决方案要求亚马逊定制其S3存储解决方案,通过提供增加成本的专业桶。另外,一些组织(不是MinIO客户)正在购买专业的存储解决方案,以实现我上述描述的简单事情。不幸的是,这给现有的基础设施增加了复杂性,因为需要新产品来解决一个相对简单的问题。

所有这些讽刺的是,MinIO客户一直都有这种选择。您可以通过在高速网络上安装MinIO的新实例并使用NVMe驱动器来实现我描述的所有内容。MinIO是一个软件定义的存储解决方案-相同的产品可以在裸机或您选择的集群上运行,使用各种存储设备。如果您的企业数据湖在裸机上使用MinIO并通过HDD工作,且对所有非ML数据都很好,那么没有理由替换它。但是,如果用于ML的数据集需要更快的I/O,因为您使用GPU,那么请考虑我在本帖中概述的方法。确保制作一份您的ML数据副本,用于MinIO的高速实例-始终在MinIO的坚不可摧的安装中存在金副本。这将允许您在MinIO的高速实例中关闭诸如复制和加密之类的特性,进一步提高性能。使用MinIO的镜像功能复制数据非常简单。

MinIO具有满足饥饿的GPU所需性能的能力-最近的一项基准测试在GETs上实现了325 GiB/s,在PUTs上实现了165 GiB/s,仅用32个节点的标准NVMe SSD。

今天就下载MinIO,了解如何轻松构建数据湖屋。如果您有任何问题,一定要联系我们!

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

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

相关文章

三、软硬件工作流程分析

现在的计算机主要是由两部分组成:软件系统和硬件系统。这里先捋清楚硬件和软件的关系,以及电脑 各个组成部分是如何配合工作的。 软件系统主要被分类为两大类: 系统软件:这包括操作系统,如Windows、Linux等。操作系统是…

ManticoreSearch-(安装配置,集群搭建)-学习总结

ManticoreSearch-(安装配置)-学习总结 基础概念安装搭建集群搭建(基于K8S) 原文地址 https://blog.csdn.net/liuyij3430448/article/details/135955025 基础概念 Manticore Search是一个专门为搜索设计的多存储数据库,具有强大的全文搜索功能,适用于…

力扣hot100 三数之和 双指针 细节去重

Problem: 15. 三数之和 文章目录 思路Code 思路 &#x1f468;‍&#x1f3eb; 参考 Code ⏰ 时间复杂度: O ( n 2 ) O(n^2) O(n2) &#x1f30e; 空间复杂度: O ( 1 ) O(1) O(1) class Solution {public List<List<Integer>> threeSum(int[] nums){List&l…

composer常用命令

查看全局配置信息 composer config -gl 设置镜全局像地址 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 去掉-g&#xff0c;即表示只有当前项目使用该镜像 批量安装composer项目依赖 composer install 执行该命令后&#xff0c;会读取当…

算法练习-二叉树的层序遍历(思路+流程图+代码)

难度参考 难度&#xff1a;中等 分类&#xff1a;二叉树 难度与分类由我所参与的培训课程提供&#xff0c;但需要注意的是&#xff0c;难度与分类仅供参考。且所在课程未提供测试平台&#xff0c;故实现代码主要为自行测试的那种&#xff0c;以下内容均为个人笔记&#xff0c;旨…

EasyExcel根据对应的实体类模板完成多个sheet的写入与读取

1.展示模板一的实体类 import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ContentRowHeight; import com.alibaba.excel.annotation.write.style.HeadRowH…

软件价值3-A*算法寻路

A*算法&#xff08;A-star算法&#xff09;是一种启发式搜索算法&#xff0c;主要用于在图或网络中找到从起始节点到目标节点的最佳路径。它结合了Dijkstra算法的广度优先搜索和贪婪最优优先搜索的特点&#xff0c;通过估算从起始节点到目标节点的代价来指导搜索方向。 A*算法…

CentOS 8最小安装

简介 CentOS 8的IOS如果下载DVD版本至少有10G 这里我们直接选择最小安装&#xff0c;因此选择最小系统boot版本 CentOS-8.5.2111-x86_64-boot.iso 下载地址 https://mirrors.aliyun.com/centos/8.5.2111/isos/x86_64/ 直接选择CentOS-8.5.2111-x86_64-boot.iso 大小只有789.0…

MIT6.5830 实验0

前置 本次实验使用 Golang 语言实现&#xff0c;在之前的年份中&#xff0c;都是像 cs186 那样使用 Java 实现。原因&#xff1a; Golang 语言作为现代化语言&#xff0c;简单易上手但功能强大。 使参加实验的同学有同一起跑线&#xff0c;而不是像Java那样&#xff0c;有些同…

鸿蒙HarmonyOS——AVSession开发指导

AVSession开发指导 说明&#xff1a; AVSession的所有接口均为系统接口&#xff0c;其功能仅提供给系统应用使用。 会话接入端开发指导 基本概念 会话元数据AVMetadata: 媒体数据相关属性&#xff0c;包含标识当前媒体的ID(assetId)&#xff0c;上一首媒体的ID(previousAsset…

链式二叉树(1)

目录 二叉树的概念&结构 二叉树的遍历概念 手写二叉树测试 二叉树遍历实现代码 递归图解 前序遍历递归图解 中序序遍历递归图解 后续遍历递归图解 二叉树的概念&结构 二叉树是&#xff1a; 空树非空&#xff1a;根节点&#xff0c;根节点的左子树、根节点的右子…

基于MongoDB实现聊天记录的存储

一、mongodb简介 1.1 mongodb简介 MongoDB是一个基于分布式文件存储的数据库&#xff0c;使用C语言编写。它旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB介于关系数据库和非关系数据库之间&#xff0c;是非关系数据库当中功能最丰富、最像关系数据库的。 Mong…

【TCP】三次握手(建立连接)

前言 在网络通信的世界里&#xff0c;可靠传输协议&#xff08;TCP&#xff09;扮演着重要的角色&#xff0c;它保证了数据包能够按顺序、完整地从发送端传送到接收端。TCP协议中有一个至关重要的机制——三次握手。这一过程确保了两个TCP设备在开始数据传输之前建立起一个稳定…

计算机毕业设计 | SpringBoot 房屋租赁网 房屋租赁平台(附源码)

1&#xff0c;绪论 1.1 背景调研 在房地产行业持续火热的当今环境下&#xff0c;房地产行业和互联网行业协同发展&#xff0c;互相促进融合已经成为一种趋势和潮流。本项目实现了在线房产平台的功能&#xff0c;多种技术的灵活运用使得项目具备很好的用户体验感。 这个项目的…

【Linux】环境基础开发工具的使用(一)

前言&#xff1a;在此之前我们学习了一些Linux的权限&#xff0c;今天我们进一步学习Linux下开发工具的使用。 &#x1f496; 博主CSDN主页:卫卫卫的个人主页 &#x1f49e; &#x1f449; 专栏分类:Linux的深度刨析 &#x1f448; &#x1f4af;代码仓库:卫卫周大胖的学习日记…

长时间佩戴骨传导耳机会损害听力吗?骨传导耳机有什么优点?

如果是正常的使用&#xff0c;是不会对损伤听力的&#xff0c;如果错误的使用&#xff0c;比如说高音量使用&#xff0c;长时间也会出现一定的危害&#xff0c;而且骨传导耳机相比于传统耳机&#xff0c;其优点也要多一些&#xff0c;下面一起看下骨传导耳机都有哪些优点吧。 佩…

dockerpipwork相关测试过程

pipework可以减轻docker实施过程中的工作量&#xff0c;在网上也找了几篇类似的文章&#xff0c;按照相应配置&#xff0c;结果并不相同 如下测试过程记录下&#xff1a; docker run -it --rm --name c1 busybox docker run -it --rm --name c2 busyboxpipework br1 c1 192…

玛格全屋定制携手君子签,实现业务信息、流程、合同全面数字化

中国定制家居领导品牌——玛格全屋定制携手君子签&#xff0c;部署玛格业务系统&#xff0c;将电子签章系统与供应链上下游业务合同签署场景融合&#xff0c;通过无纸化、电子化的签署环境&#xff0c;打造业务“线上审批、签署、归档”闭环&#xff0c;助推业务减负提效。 电…

Redis 布隆过滤器

布隆过滤器 这一篇文章主要是记录布隆过滤器的使用和认识 主要参考了如下的blog https://blog.csdn.net/weixin_42972832/article/details/131211665 他讲的还不错 简单的来说,布隆过滤器,实际上就像是一个集合,拿redis的key来举例来说,布隆过滤器的设置就是去过滤不属于redi…

5、混合模型(Hybrid Models)

将两个预测模型的优势结合起来。 文章目录 1、简介2、组件和残差3、混合预测与残差3.1设计混合模型4、示例 - 美国零售销售1、简介 线性回归擅长推断趋势,但不能学习交互。XGBoost擅长学习交互,但不能推断趋势。在这个课程中,我们将学习如何创建"混合"预测器,这…