人工智能万卡 GPU 集群的硬件和网络架构

ba8fec6e633dc1704acadef28c01263f.jpeg 

万卡 GPU 集群互联:硬件配置和网络设计

   

一、背景

自从 OpenAI 推出 ChatGPT 以来,LLM 迅速成为焦点关注的对象,并取得快速发展。众多企业纷纷投入 LLM 预训练,希望跟上这一波浪潮。然而,要训练一个 100B 规模的 LLM,通常需要庞大的计算资源,例如拥有万卡 GPU 的集群。以 Falcon 系列模型为例,其在 4096 个 A100 组成的集群上训练 180B 模型,训练 3.5T Token 耗时将近 70 天。随着数据规模不断膨胀,对算力的需求也日益增长。例如,Meta 在训练其 LLaMA3 系列模型时使用了 15T 的 Token,这一过程是在 2 个 24K H100 集群上完成的。

本文深入探讨构建大规模GPU集群的关键组件与配置。涵盖多样GPU类型与服务器配置,网络设备(网卡、交换机、光模块)调优,以及数据中心网络拓扑设计(如3-Tier、Fat-Tree)。特别聚焦NVIDIA DGX A100与DGX H100 SuperPod的精准配置与网络布局,同时概览业界万卡集群标准拓扑。助您全面理解,高效构建大规模GPU集群。

构建超万卡GPU集群是一项复杂的挑战,涉及存储网络、管理网络等多个维度。尽管本文仅触及冰山一角,但已深入探讨了广泛采用的树形拓扑结构。值得注意的是,电力与冷却系统作为集群稳定运行的关键,同样不可或缺。未来,集群的构建与维护还需在这些方面持续精进。

二、相关组件

2.1 GPU

Ampere、Hopper及最新Blackwell系列GPU持续进化,如图表所示,显存、算力及NVLink性能均显著增强,彰显其强大的技术迭代与性能提升。

  • A100升级至H100,FP16稠密算力提升超3倍,功耗从400w增至700w,效能显著提升,为高性能计算注入新动力。
  • H200升级至B200,FP16稠密算力翻倍,功耗仅从700w增至1000w,性能提升显著,能效比优异。
  • Blackwell GPU以其FP4精度支持,算力高达FP8的两倍。NVIDIA报告中,FP4算力与Hopper架构FP8算力对比,凸显了显著的加速优势,展现了Blackwell GPU的卓越性能。
  • GB200搭载完整的Full B200芯片,而B100和B200则是其简化版本,确保性能与成本的精准平衡。

e7b5af2c89ef8771e2170c8d6bede71d.jpeg

2.2 HGX

HGX,NVIDIA倾力打造的高性能服务器,集8或4个GPU于一身,搭载Intel或AMD CPU。其NVLink与NVSwitch技术实现全面互联,确保性能极致释放(8个GPU为NVLink全互联上限)。散热系统采用风冷设计,确保稳定运行。HGX,引领服务器性能新纪元。

  • HGX A100升级至HGX H100和HGX H200,FP16稠密算力激增3.3倍,同时功耗控制不到原两倍,性能卓越,效率领先。
  • HGX B100和B200在FP16稠密算力上实现近2倍提升,相较HGX H100和H200,功耗保持相当,最多节省近半,性能卓越且能效出众。
  • HGX B100与B200网络保持原配,后向IB网卡维持8x400Gb/s高速传输,无需升级,确保稳定高效。

ff60ae835634a80b4da19d9ecd472a94.jpeg

NVIDIA DGX与HGX,专为深度学习、人工智能及大规模计算打造的高性能解决方案,各具特色,满足不同设计及应用需求。

  • DGX,专为普通消费者打造,提供即插即用高性能方案,配备完整软件支持,涵盖NVIDIA深度学习软件栈、驱动与工具,预构建且封闭,轻松满足您的多样化需求。
  • HGX,专为云服务提供商与大规模数据中心运营商打造,构建高性能定制解决方案的利器。模块化设计,支持按需定制硬件,作为硬件平台或参考架构,助力客户构建卓越性能。

2.3 网络

2.3.1 网卡

这里主要介绍 ConnectX-5/6/7/8,是 Mellanox 的高速网卡,都支持以太网和 IB(InfiniBand)。2016 年发布 ConnectX-5,2019 年 NVIDIA 收购 Mellanox,然后 2020 年发布了 ConnectX-6,2022 年发布 ConnectX-7,2024 年 GTC 大会上老黄介绍了 ConnectX-8,还没看到详细参数。几个网卡对应的简要配置如下所示,可以看出,基本上每一代的总带宽都翻倍,下一代估计能到 1.6Tbps:

46603737ada7dcca48078d4ad36e3ae1.jpeg

2.3.2 交换机

NVIDIA提供以太网和IB交换机,支持数十至数百端口。其总吞吐量(双向交换能力)计算为最大带宽乘以端口数再乘以2,这里的2代表双向传输。这一配置确保高性能的数据传输和处理能力。

Spectrum-X系列以太网交换机,支持高带宽数据传输,满足多样化网络需求。尽管低带宽也兼容,但总端口数固定,故在此主要展示高带宽数据。

ae2a8b2bb93c6a9f70051dbd071eab7d.jpeg

如下图为常见的 Quantum-X 系列 IB 交换机:

c9e8811abdee695ab678b1a2897b112c.jpeg

除了以上的 Mellanox 交换机外,现在也有很多数据中心会采用框式交换机(Modular Switch),比如 Meta 最近的 Building Meta's GenAI Infrastructure 中提到其构建了 2 个包含 24K H100 的 GPU 集群,其中使用了 Arista 7800 系列交换机,而 7800 系列就包含框式交换机,如下图所示,7816LR3 和 7816R3 甚至可以提供 576 Port 的 400G 高速带宽,其内部通过高效的总线或者交换背板互联,传输和处理的延迟非常低:

f431391c87ecd1629f3ee9b0d49cd569.jpeg

2.3.3 光模块

光模块是光纤通信的核心,可将电信号高效转化为光信号,通过光纤传输,实现超高速率、长距离通信,且抗电磁干扰能力强。它集成发射器与接收器,前者负责电转光,后者实现光转电,为现代通信提供坚实技术支撑。下图为光模块结构示意,展现其工作原理与卓越性能。

ddaf6ab2aaf966ad4d5d1a83b1007592.jpeg

SFP与QSFP,光纤通信中两大光模块接口。SFP小巧便携,QSFP则四倍扩展。两者在尺寸、带宽及应用上各有千秋:S

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

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

相关文章

Google Play 提示 “您的设备与此版本不兼容“ 解决方案

一、 问题概述Google Play提示“您的设备与此版本不兼容”,无法安装应用。 遇到问题的设备为Xiaomi Mi A3,查了下这台手机的基本信息,Android One系统,版本分为9.0、10.0、11.0。 二、 问题分析Google Play的过滤器 通常有以下5种…

【Nginx <末>】Nginx 基于 IP 地址的访问限制

目录 👋前言 📫一、限制 IP 可以实现哪些功能 👀二、 项目实现 2.1 访问控制实现 2.2 Nginx 配置中指定 IP 地址 💞️三、章末 👋前言 小伙伴们大家好,前面一段时间学习了 Nginx 的相关知识&#xff0c…

RT-DRET在实时目标检测上超越YOLO8

导读 目标检测作为计算机视觉的核心任务之一,其研究已经从基于CNN的架构发展到基于Transformer的架构,如DETR,后者通过简化流程实现端到端检测,消除了手工设计的组件。尽管如此,DETR的高计算成本限制了其在实时目标检测…

React useState基本类型变量的使用

在 React 中,useState 是一个 Hook,用于在函数组件中添加状态,它可以让函数组件拥有状态。基本使用方法如下: // App.jsx import React, { useState } from reactfunction App() {// 使用 useState 创建一个状态变量,初…

如何用Java实现SpringCloud Alibaba Sentinel的熔断功能?

在Java中使用Spring Cloud Alibaba Sentinel实现熔断功能的步骤如下&#xff1a; 添加依赖 在项目的pom.xml文件中添加Spring Cloud Alibaba Sentinel的依赖&#xff1a; <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud…

C语言——malloc和free用法和常见误区

最近写了个关于动态数组的代码&#xff0c;遇到了一个大坑&#xff0c;特此记录 先说结论&#xff1a; 1.利用malloc创建堆空间&#xff0c;大小最好设置大一点&#xff0c;不然后面存进去的值需要的空间过大会导致各种的堆、指针问题 2.只能使用realloc对已经创建的空间进行修…

没有电商经验的人去操作抖音小店,难度大不大?好操作吗?

大家好&#xff0c;我是电商小V 很多新手小伙伴想去操作抖音小店项目&#xff0c;咨询的最多的问题就是我没有电商运营的经验可以去操作吗&#xff1f; 当然是可以操作的&#xff0c;抖音小店项目对于新手来说是一个非常友好的项目&#xff0c;很多小伙伴都是感觉没有电商经验去…

C++——list的实现以及源码

前言&#xff1a; 最近学习了clist的实现&#xff0c;这让我对迭代器的理解又上升了一个新的高度&#xff0c;注意&#xff1a;代码里的list是放在一个叫zgw的命名空间里边&#xff0c;但是在实现list的代码中没有加namespace&#xff0c;这里给个注意&#xff0c;以后复习时能…

整理了10个靠谱且热门的赚钱软件,适合普通人长期做的赚钱副业

作为一名普通的上班族&#xff0c;我们每天都在辛勤工作&#xff0c;但工资的增长速度却如同蜗牛般缓慢。不过&#xff0c;别担心&#xff0c;信息时代总是带给我们无尽的惊喜&#xff01;今天&#xff0c;我将为大家推荐一些赚钱的宝藏软件&#xff0c;让你在闲暇之余轻松实现…

五分钟搭建一个Suno AI音乐站点

五分钟搭建一个Suno AI音乐站点 在这个数字化时代&#xff0c;人工智能技术正以惊人的速度改变着我们的生活方式和创造方式。音乐作为一种最直接、最感性的艺术形式&#xff0c;自然也成为了人工智能技术的应用场景之一。今天&#xff0c;我们将以Vue和Node.js为基础&#xff…

三十六计的笔记

系列文章目录 三十六计的笔记 文章目录 系列文章目录1、瞒天过海2、围魏救赵3、借刀杀人4、以逸待劳5、趁火打劫6、声东击西7、无中生有8、暗渡陈仓9、隔岸观火10、笑里藏刀11、李代桃僵12、顺手牵羊13、打草惊蛇14、借尸还魂15、调虎离山16、欲擒故纵17、抛砖引玉18、擒贼擒王…

牛客NC302 环形数组的连续子数组最大和【中等 动态规划 Java/Go/PHP/C++】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/e9f3282363844355aa51497c5410beee 思路 动态规划 两种情况&#xff08;首位相连的&#xff09;和首位不相连的 首尾相连的可以算最小的连续子数组得出&#xff0c;sum-就是。Java代码 import java.util.*;pub…

第20届文博会:“特别呈现”—周瑛瑾雷米·艾融双个展,著名美术评论家,批评家彭德教授对周瑛瑾作品进行评论

周瑛瑾不是学院派艺术家&#xff0c;但在彩墨画领域的天赋超出中国八大美院的同类型画家。相比具有批判意识的当代艺术&#xff0c;他的彩墨艺术如同我们这个苦难世界的创可贴和安慰剂。当我面对他的彩墨画&#xff0c;首先是惊艳&#xff0c;随之想到屈原的离骚&#xff0c;还…

slint esp32 tokio

源码&#xff1a;https://github.com/xiaguangbo/slint_esp32_tokio cpu 是 esp32c2&#xff0c;屏幕是 ili9341&#xff0c;触摸是 xpt2046&#xff0c;使用 spi 半双工 不使用DMA&#xff08;esp-rs还没支持&#xff09;&#xff0c;SPI 40M&#xff0c;240*320全屏刷新为1.5…

Windows、Linux下,基于QT的打包方法

整理这篇文档的意义在于&#xff1a;自己走了很多弯路&#xff0c;淋过雨所以想为别人撑伞&#xff0c;也方便回顾&#xff0c;仅供参考 ps: 第一次做Windows下打包&#xff0c;用了2小时&#xff0c;第二次20秒第一次做Linux(ubuntu)下打包&#xff0c;用了8小时&#xff0c;…

Linux 内核

查看内核的发行版 $ uname -r 5.4.0-150-genericcd /lib/modules/5.4.0-150-generic, 内核源码所在的位置&#xff1a;/usr/src 这里的内核源码路径&#xff08;–kernel-source-path&#xff09;即为&#xff1a; cd /usr/src/linux-headers-5.4.0-150-generic/ 临时生效: …

JMETER工具:以录制手机app为例

JMETER工具&#xff1a;以录制手机app为例子 JMETER安装和环境配置 pc需要安装jdk&#xff0c;并进行jdk的环境配置&#xff0c;安装好jdk并配置好后&#xff0c;通过命令行输入java –version出现以下界面就表示安装成功&#xff1a; &#xff08;对应的jdk版本不可太低&…

网络通信(二)

UDP通信 特点&#xff1a;无连不是先接、不可靠通信 不事先建立连接&#xff1b;发送端每次把要发送的数据&#xff08;限制在64KB内&#xff09;、接收端IP、等信息封装成一个数据包&#xff0c;发出去就不管了 java提供了一个java.net.DatagramSocket类来实现UDP通信 Dat…

第13章-循迹功能 循迹小车讲解 原理分析 STM32智能小车循迹教程 红外对管使用 PID循迹算法分析

讲解一下我们小车里面的循迹部分&#xff0c;包括红外基础使用&#xff0c;无PID循迹和有PID循迹。 第13章-循迹功能 13.1-非PID循迹功能完成 先红外对管调试 我们这里学习一下&#xff0c;如何实现循迹功能 如何才能让小车沿着黑线运动、要让小车感知到黑线的位置&#x…

【SpringBoot】SpringBoot中防止接口重复提交(单机环境和分布式环境)

&#x1f4dd;个人主页&#xff1a;哈__ 期待您的关注 目录 &#x1f33c;前言 &#x1f512;单机环境下防止接口重复提交 &#x1f4d5;导入依赖 &#x1f4c2;项目结构 &#x1f680;创建自定义注解 ✈创建AOP切面 &#x1f697;创建Conotroller &#x1f4bb;分布…