ChatGPT带火的HBM是什么?

news2024/9/29 9:33:43

    “ChatGPT是人工智能领域的iPhone时刻,也是计算领域有史以来最伟大的技术之一。” 英伟达创始人兼CEO黄仁勋此前这样盛赞ChatGPT。

    ChatGPT突然爆火,对大算力芯片提出了更高更多的要求。近日,据韩国经济日报报道,受惠于ChatGPT,三星、SK海力士HBM(high bandwidth memory,高带宽内存)接单量大增。

HBM是什么?

     HBM(High Bandwidth Memory)即高带宽存储器,是基于硅通孔(TSV)和微凸点(Microbump)技术将多个DRAMdie和Logicdie堆叠而成的具有三维结构的存储产品。

    GPU的主流存储方案目前有GDDR和HBM两种。在冯·诺依曼计算机体系结构中,存在着“内存墙”和“功耗墙”问题,由于传统显存GDDR5面临着带宽低、功耗高等瓶颈,HBM则能通过3D封装工艺实现DRAMdie的垂直方向堆叠封装,可以极大程度节约存储芯片占据的面积,实现更高的集成度和更大存储容量。

     在传输速率方面,基于TSV工艺可以在存储芯片上制造多个内存通道、且更高集成度使得HBM和处理器之间物理距离得以缩短,因此HBM在位宽、带宽等关键性能上均明显优于GDDR。根据SAMSUNG,3DTSV工艺较传统POP封装形式节省了35%的封装尺寸,降低了50%的功耗,并且对比带来了8倍的带宽提升,有效解决了内存墙问题和功耗墙问题,成为当前满足AI需求的最佳方案,被所有主流AI芯片采用。

为什么需要HBM?

    主要是因为随着GPU 的功能越来越强大,需要更快地从内存中访问数据,以缩短应用处理时间。例如,AI和视觉,具有巨大内存和计算和带宽要求。

    为了减小“内存墙”的影响,提升内存带宽一直是存储芯片聚焦的关键问题。

    半导体的先进封装为克服阻碍高性能计算应用程序的内存访问障碍提供了机会,内存的延迟和密度都是可以在封装级别解决的挑战。基于对先进技术和解决方案开展的研究,内存行业在新领域进行了更深入的探索。

    为了克服这些挑战,半导体封装设计人员采用了异构集成路线,以在更靠近处理器的位置包含更多内存。而HBM就为现代处理器和嵌入式系统当前面临的内存障碍问题提供了解决方案。这些存储器为系统设计人员提供了两个优势:一是减少组件占用空间和外部存储器要求;二是更快的内存访问时间和速率。

    叠起来之后,直接结果就是接口变得更宽,其下方互联的触点数量远远多于DDR内存连接到CPU的线路数量。因此,与传统内存技术相比,HBM具有更高带宽、更多I/O数量、更低功耗、更小尺寸。

    目前,HBM产品以HBM(第一代)、HBM2(第二代)、HBM2E(第三代)、HBM3(第四代)、HBM3E(第五代)的顺序开发,最新的HBM3E是HBM3的扩展版本。

     当然,存储器的容量也在不断加大:HBM2E的最大容量为16GB,目前,三星正在利用其第四代基于EUV光刻机的10nm制程(14nm)节点来制造24GB容量的HBM3芯片,此外8层、12层堆叠可在HBM3E上实现36GB(业界最大)的容量,比HBM3高出50%。

    此前SK海力士、美光均已宣布推出HBM3E芯片,皆可实现超过1TB/s的带宽。

    同时,三星也宣布HBM4内存将采用更先进的芯片制造和封装技术,虽然HBM4的规格尚未确定,但有消息称业界正寻求使用2048位内存接口,并使用FinFET晶体管架构来降低功耗。三星希望升级晶圆级键合技术,从有凸块的方式转为无凸块直接键合。因此,HBM4的成本可能会更高。

HBM的未来应用前景

    随着AI大模型、智能驾驶等新技术的崛起,人们对高带宽的内存的需求越来越多。

    首先,AI服务器的需求会在近两年爆增,如今在市场上已经出现了快速的增长。AI服务器可以在短时间内处理大量数据,GPU可以让数据处理量和传输速率的大幅提升,让AI服务器对带宽提出了更高的要求,而HBM基本是AI服务器的标配。

    除了AI服务器,汽车也是HBM值得关注的应用领域。汽车中的摄像头数量,所有这些摄像头的数据速率和处理所有信息的速度都是天文数字,想要在车辆周围快速传输大量数据,HBM具有很大的带宽优势。

     另外,AR和VR也是HBM未来将发力的领域。因为VR和AR系统需要高分辨率的显示器,这些显示器需要更多的带宽来在 GPU 和内存之间传输数据。而且,VR和AR也需要实时处理大量数据,这都需要HBM的超强带宽来助力。

    此外,智能手机、平板电脑、游戏机和可穿戴设备的需求也在不断增长,这些设备需要更先进的内存解决方案来支持其不断增长的计算需求,HBM也有望在这些领域得到增长。并且,5G 和物联网 (IoT) 等新技术的出现也进一步推动了对 HBM 的需求。

    并且,AI的浪潮还在愈演愈烈,HBM今后的存在感或许会越来越强。据semiconductor-digest预测,到2031年,全球高带宽存储器市场预计将从2022年的2.93亿美元增长到34.34亿美元,在2023-2031年的预测期内复合年增长率为31.3%。

HBM需要克服的问题

1:HBM需要较高的工艺从而导致大幅度提升了成本。

针对更大数据集、训练工作负载所需的更高内存密度要求,存储厂商开始着手研究扩展Die堆叠层数和物理堆叠高度,以及增加核心Die密度以优化堆叠密度。

但就像处理器芯片摩尔定律发展一样,当技术发展到一个阶段,想要提升更大的性能,那么成本反而会大幅提升,导致创新放缓。

2:产生大量的热,如何散热是GPU极大的挑战。

行业厂商需要在不扩大现有物理尺寸的情况下增加存储单元数量和功能,从而实现整体性能的飞跃。但更多存储单元的数量让GPU的功耗大幅提升。新型的内存需要尽量减轻内存和处理器之间搬运数据的负担。

最后总结

随着人工智能、机器学习、高性能计算、数据中心等应用市场的兴起,内存产品设计的复杂性正在快速上升,并对带宽提出了更高的要求,不断上升的宽带需求持续驱动HBM发展。相信未来,存储巨头们将会持续发力、上下游厂商相继入局,让HBM得到更快的发展和更多的关注。

参考资料

[01] 《An Overview of the Development of a GPU with integrated HB Mon Silicon Interposer》,IEEE

[02] https://www.eepw.com.cn/article/202312/454189.htm

[03] https://www.eet-china.com/news/202302168387.html

[04] 李川,郑浩,王彦辉.硅转接层高带宽存储互连通道信号完整性设计及仿真
 [J]. 计算机工程与科学. 2022 (02)

[05] 吴铁彬,过锋,王谛.
面向E级计算的高性能处理器核心运算架构研究进展[J]. 计算机工程与科学. 2023 (05)

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

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

相关文章

naive-ui-admin BasicTable 列表操作栏显示图标icon

效果图 在使用BasicTable的页面添加引用,这里随便弄了个icon import { GameController } from "vicons/ionicons5" 自定义列 const actionColumn reactive({width: 180,title: "操作",key: "action",fixed: "right",ren…

python爬虫实战:获取电子邮件和联系人信息

引言 在数字时代,电子邮件和联系人信息成为了许多企业和个人重要的资源,在本文中,我们将探讨如何使用Python爬虫从网页中提取电子邮件和联系人信息,并附上示例代码。 目录 引言 二、准备工作 你可以使用以下命令来安装这些库&a…

【笔记】深度学习入门:基于Python的理论与实现(二)

神经网络的学习(神经网络的学习阶段,不是我们学习神经网络) 从数据中学习 训练数据和测试数据 机器学习中,一般将数据分为训练数据和测试数据两部分来进行学习和 实验等。首先,使用训练数据进行学习,寻找最…

SQL进阶(三):Join 小技巧:提升数据的处理速度

复杂数据结构处理:Join 小技巧:提升数据的处理速度 本文是在原本sql闯关的基础上总结得来,加入了自己的理解以及疑问解答(by GPT4) 原活动链接 用到的数据:链接 提取码:l03e 目录 1. 课前小问…

C++笔记之执行一个可执行文件时指定动态库所存放的文件夹lib的路径

C++笔记之执行一个可执行文件时指定动态库所存放的文件夹lib的路径 参考博文: 1.C++笔记之执行一个可执行文件时指定动态库所存放的文件夹lib的路径 2.Linux笔记之LD_LIBRARY_PATH详解 3.qt-C++笔记之使用QProcess去执行一个可执行文件时指定动态库所存放的文件夹lib的路径 c…

React PureComponent 和 React.memo()区别

1 注意 ● PureComponent和memo仅作为性能优化的方式存在 ● 不要依赖它来阻止渲染,会产生BUG ● PureComponnet 和memo 都是通过对 props 值的浅比较来决定该组件是否需要更新的。 2 PureComponent 和React.memo() 区别 PureComponent 和React.memo()都是React优化…

Sora专辑|AI界一夜变天

没有丝毫预热和剧透,Open AI深夜直接丢下核弹炸了街,从业者深感要变天。 2月16日凌晨,Open AI发布了首个“文生视频”模型Sora。官方介绍,Sora能根据文字指令创造出包含丰富细节的逼真场景、角色,且能用多角度镜头,生成一镜到底的60秒长视频。 目前官网上已经更新了48个…

python Matplotlib Tkinter-->导出pdf报表

环境 python:python-3.12.0-amd64 包: matplotlib 3.8.2 reportlab 4.0.9 import matplotlib.pyplot as plt from matplotlib.backends.backend_tkagg import FigureCanvasTkAgg, NavigationToolbar2Tk import tkinter as tk import tkinter.messagebox as messagebox impor…

【java-集合框架】ArrayList类

📢java基础语法,集合框架是什么?顺序表的底层模拟实现都是看本篇前的基础必会内容,本篇不再赘述,详情见评论区文章。 📢编程环境:idea 【java-集合框架】ArrayList类 1. 先回忆一下java代码中常…

Facebook Messenger链接分享:如何创建链接并设置自动化内容

Facebook Messenger链接是指基于Facebook用户名创建的会话链接,用户可以在其Facebook页面的设置部分复制此链接进行分享。然后将该链接直接粘贴到独立站、电子邮件、名片或社交媒体中,让目标受众可以一键进入对话。为了满足某些商家的需求,Fa…

Qt QWidget 简约美观的加载动画 第五季 - 小方块风格

给大家分享两个小方块风格的加载动画 &#x1f60a; 第五季来啦 &#x1f60a; 效果如下: 一个三个文件,可以直接编译运行 //main.cpp #include "LoadingAnimWidget.h" #include <QApplication> #include <QGridLayout> int main(int argc, char *arg…

时间序列分析实战(四):Holt-Winters建模及预测

&#x1f349;CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一&#xff5c;统计学&#xff5c;干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项&#xff0c;参与研究经费10w、40w级横向 文…

C++ //练习 9.24 编写程序,分别使用at、下标运算符、front和begin提取一个vector中的第一个元素。在一个空vector上测是你的程序。

C Primer&#xff08;第5版&#xff09; 练习 9.24 练习 9.24 编写程序&#xff0c;分别使用at、下标运算符、front和begin提取一个vector中的第一个元素。在一个空vector上测是你的程序。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工具&#xff1a;v…

详解POCV/SOCV的时序报告

​POCV/SOCV的时序报告中有如下变量&#xff1a; Mean: 高斯分布中的μ值&#xff08;平均值&#xff09; Sensit: sensitivity&#xff0c;也就是1个Sigma的值&#xff1b; Corner: Sigma边界的最差值 cell的delay Delay mean N * Delay sigma; cell 的Transition Sl…

UE5 C++ Widget练习 Button 和 ProgressBar创建血条

一. 1.C创建一个继承Widget类的子类&#xff0c; 命名为MyUserWidget 2.加上Button 和 UserWidget的头文件 #include "CoreMinimal.h" #include "Components/Button.h" #include "Blueprint/UserWidget.h" #include "MyUserWidget.genera…

OpenCV 16 - Qt使用opencv视觉库

1 下载好opencv视觉库 不知道怎么下载和编译opencv视觉库的可以直接使用这个 : opencvcv_3.4.2_qt 2 解压opencv包 3 打开opencv的安装目录 4.打开x86/bin 复制里面所有的dll文件&#xff0c;黏贴到C/windows/syswow64里面 5 新建Qt项目 6 修改pro文件:添加对应的头文件和库文件…

【HMAC-SHA1算法以及工作原理】

曾梦想执剑走天涯&#xff0c;我是程序猿【AK】 目录 简述概要知识图谱总结 简述概要 连接HMAC-SHA1工作原理以及工具代码 知识图谱 HMAC&#xff08;Hash-based Message Authentication Code&#xff0c;基于散列的消息认证码&#xff09;是一种结合了密钥和消息的认证方法…

Python算法题集_全排列

Python算法题集_全排列 题46&#xff1a;全排列1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【标记数组递归】2) 改进版一【指针递归】3) 改进版二【高效迭代模块】4) 改进版三【高效迭代模块极简代码】 4. 最优算法5. 相关资源 本文为Python…

【GPTs分享】每日GPTs分享之Image Generator Tool

今日GPTs分享&#xff1a;Image Generator Tool。Image Generator Tool是一种基于人工智能的创意辅助工具&#xff0c;专门设计用于根据文字描述生成图像。这款工具结合了专业性与友好性&#xff0c;鼓励用户发挥创造力&#xff0c;同时提供高效且富有成效的交互体验。 主要功能…

【新书推荐】8.1 数组

第八章 数组 数组是程序设计中最常用的数据类型之一。数组表示在指定的内存地址处&#xff0c;连续存储具有相同数据类型的一组元素。每个数组元素可以视为一个单独的变量&#xff0c;使用数组名和数组下标来表示。例如int类型的数组元素a[2]&#xff0c;表示在内存地址a处&am…