首页 > 其他分享 >绕过CPU:英伟达与IBM致力推动GPU直连SSD以大幅提升性能

绕过CPU:英伟达与IBM致力推动GPU直连SSD以大幅提升性能

时间:2024-12-23 21:54:29浏览次数:6  
标签:直连 伟达 ------------- SSD GPU BaM CPU

绕过CPU:英伟达与IBM致力推动GPU直连SSD以大幅提升性能| Id | Title | DateAdded | SourceUrl | PostType | Body | BlogId | Description | DateUpdated | IsMarkdown | EntryName | CreatedTime | IsActive | AutoDesc | AccessPermission |

| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------| -------------|
| 16018213| 绕过CPU:英伟达与IBM致力推动GPU直连SSD以大幅提升性能| 2022-03-17T17:31:00| | BlogPost|

通过与几所大学的合作,英伟达和 IBM 打造了一套新架构,致力于为 GPU 加速应用程序,提供对大量数据存储的快速“细粒度访问”。所谓的“大加速器内存”(Big Accelerator Memory)旨在扩展 GPU 显存容量、有效提升存储访问带宽,同时为 GPU 线程提供高级抽象层,以便轻松按需、细粒度地访问扩展内存层次中的海量数据结构。

 

 

以 CPU 为中心的传统模型示例

显然,这项技术将使人工智能、分析和机器学习训练等领域更加受益。而作为 BaM 团队中的重量级选手,英伟达将为创新项目倾注自身的广泛资源。

比如允许 NVIDIA GPU 直接获取数据,而无需依赖于 CPU 来执行虚拟地址转换、基于页面的按需数据加载、以及其它针对内存和外存的大量数据管理工作。

对于普通用户来说,我们只需看到 BaM 的两大优势。其一是基于软件管理的 GPU 缓存,数据存储和显卡之间的信息传输分配工作,都将交给 GPU 核心上的线程来管理。

通过使用 RDMA、PCI Express 接口、以及自定义的 Linux 内核驱动程序,BaM 可允许 GPU 直接打通 SSD 数据读写。

 

BaM 模型示例

其次,通过打通 NVMe SSD 的数据通信请求,BaM 只会在特定数据不在软件管理的缓存区域时,才让 GPU 线程做好参考执行驱动程序命令的准备。

基于此,在图形处理器上运行繁重工作负载的算法,将能够通过针对特定数据的访问例程优化,从而实现针对重要信息的高效访问。

显然,以 CPU 为中心的策略,会导致过多的 CPU-GPU 同步开销(以及 I/O 流量放大),从而拖累了具有细粒度的数据相关访问模式 —— 比如图形与数据分析、推荐系统和图形神经网络等新兴应用程序的存储网络带宽效率。

为此,研究人员在 BaM 模型的 GPU 内存中,提供了一个基于高并发 NVMe 的提交 / 完成队列的用户级库,使得未从软件缓存中丢失的 GPU 线程,能够以高吞吐量的方式来高效访问存储。

 

BaM 设计的逻辑视图

更棒的是,该方案在每次存储访问时的软件开销都极低,并且支持高度并发的线程。而在基于 BaM 设计 + 标准 GPU + NVMe SSD 的 Linux 原型测试平台上开展的相关实验,也交出了相当喜人的成绩。

作为当前基于 CPU 统管一切事务的传统解决方案的一个可行替代,研究表明存储访问可同时工作、消除了同步限制,并且 I/O 带宽效率的显著提升,也让应用程序的性能不可同日而语。

此外 NVIDIA 首席科学家、曾带领斯坦福大学计算机科学系的 Bill Dally 指出:得益于软件缓存,BaM 不依赖于虚拟内存地址转换,因而天生就免疫于 TLB 未命中等序列化事件。

最后,三方将开源 BaM 设计的新细节,以期更多企业能够投入到软硬件的优化、并自行创建类似的设计。有趣的是,将闪存放在 GPU 一旁的 AMD Radeon 固态显卡,也运用了类似的功能设计理念。

| 648658| | 2022-03-17T17:31:00| false| | 2022-03-17T17:30:58.24| true| 通过与几所大学的合作,英伟达和 IBM 打造了一套新架构,致力于为 GPU 加速应用程序,提供对大量数据存储的快速“细粒度访问”。所谓的“大加速器内存”(Big Accelerator Memory)旨在扩展 GPU 显存容量、有效提升存储访问带宽,同时为 GPU 线程提供高级抽象层,以便轻松按需、| Anonymous|

标签:直连,伟达,-------------,SSD,GPU,BaM,CPU
From: https://www.cnblogs.com/ralphlauren/p/18621348

相关文章

  • 2025英伟达奖学金出炉,7位华人博士生入选,上交、中科大、浙大校友在列
    华人学生占比70%。今天,一年一度的英伟达奖学金公布了入选者名单。二十多年来,英伟达研究生奖学金计划(NVIDIAGraduateFellowshipProgram)一直为研究生提供与英伟达技术相关的杰出工作支持。英伟达迄今为止已向近200名学生提供了600万美元的资助,推动了机器学习、计算......
  • 拦截烂SQL,解读GaussDB(DWS)查询过滤器过滤规则原理
    本文分享自华为云社区《GaussDB(DWS)查询过滤器过滤规则原理与使用介绍》,作者:清道夫。1.前言适用版本:【9.1.0.100(及以上)】查询过滤器在9.1.0.100之前就具备提供查询过滤功能的能力,但仅支持自动隔离反复查询被终止的查询,防止烂SQL再次执行。老版本主要面向异常熔断机制和紧急......
  • spring boot使用Jwt令牌时出现 java.lang.NoClassDefFoundError: javax/xml/bind/Data
    问题根源    在Java9及更高版本中,Java平台经历了模块化系统(Jigsaw项目)的重大变化。作为这一变化的一部分,某些API被移出了默认的JDK发行版,其中包括JAXB(JavaArchitectureforXMLBinding)API。因此,在使用这些被移除的API时,如果应用程序或库没有适当地包......
  • SSD201/202D修改默认自启动脚本的方法,保姆级攻略来了
    本文介绍SigmaStarSSD201/SSD202D修改默认自启动脚本的方法,方便让应用程序开机自启动。使用触觉智能的PurplePiR1双网口开发板演示,内置双核A71.2Ghz处理器,支持WiFi,是嵌入式新人入门学习的高性价比开发板!方法一:在系统中直接修改文件此方法适合开发调试使用打开customer/demo......
  • GaussDB——PageStore组件
    PageStore是一个分布式存储,对外提供SAL接口,SQL节点通过SAL接口进行日志和页面的持久化服务,PageStore对象间的映射关系如下图所示。PageClusterManagerControlServer(集群管理):页面集群管理控制服务负责整个存储节点的管理,VFS和StoreSpace的管理,以及Slice的分配和调度。VFS:虚拟......
  • GaussDB DCS组件
    云原生数据库支持DCS一是为了DCS能够支持持久化能力,二是构建一站式的云数据库服务能力。DCS原来是一个sharenothing的分布式集群,有自己的通信管理,集群管理和客户端。在云原生数据库中,DCS是作为一个组件集成到整个服务中,主要提供字符串(String)、哈希(Hash)、列表(List)、集合结构(Set、S......
  • GaussDB高性能关键技术——查询重写RBO
    在数据库里RBO基于规则的优化一般指查询重写技术,按照一系列关系代数表达式的等价规则,对查询的关系代数表达式进行等价转换,从逻辑上减少执行的总量从而提高查询执行效率,例如,通过条件的推导得出非必要的表扫描、避免非必要的计算表示等。查询重写RBO优化是非常重要的一种逻辑优化......
  • GaussDB数据库技术解读——高性能关键技术
    GaussDB数据库技术解读——高性能关键技术内容概要:本章节介绍GaussDB中实现的高性能关键技术,内容涉及优化器、执行器、分布式数据库、存储引擎等多个方面。目的:通过对GaussDB数据库关键高性能技术的学习,能够让读者更加清晰的理解数据库内核哪些优化是性能关键点同时也为类似的应......
  • GaussDB数据库技术解读——分布式执行
    GaussDB数据库技术解读——分布式执行分布式执行主要为分布式数据库提供一套完备的支撑数据跨节点交换,协同计算的计算框架,能够支撑位于不同地点的许多计算分片机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库,数据的分布式切片方式从大的分类上......
  • GaussDB技术解读——高性能之查询处理流程
    GaussDB技术解读——高性能之查询处理流程查询处理流程查询在经典数据库实现中需要依次进行以下4个环节,(1)查询解析:对用户输入查询进行编译,把查询从文本方式翻译成执行引擎可以识别的语句。(2)查询优化:对查询的进行基于规则的逻辑优化RBO和基于代价CBO的物理优化(3)查询执行:将查询执......