0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用CUTLASS实现高性能矩阵乘法

星星科技指导员 来源:NVIDIA 作者:Matthew Nicely 2022-04-15 10:03 次阅读

CUTLASS 是 CUDA C ++模板抽象的集合,用于在 CUDA 的所有级别和规模上实现高性能矩阵乘法( GEMM )。它结合了分层分解和数据移动的策略,类似于用于实现cuBLAS的策略。

CUTLASS 将这些“运动部件”分解为 C ++模板类抽象的可重用和模块化的软件组件。这些线程范围、扭曲范围、块范围和设备范围的原语可以通过自定义平铺大小、数据类型和其他算法策略进行专门化和调优。由此产生的灵活性简化了它们在定制内核和应用程序中作为构建块的使用。

为了支持多种应用程序, CUTLASS 为混合精度计算提供了广泛的支持,提供了专门的数据移动,并为以下各项提供了多重累积抽象:

半精度浮点(FP16)、 BFloat16 (BF16)和张量浮点 32 (TF32)数据类型。

单精度浮点(FP32)数据类型。

双精度浮点(FP64)数据类型。

整数数据类型(4b和8b)。

二进制数据类型(1b)。

此外, CUTLASS 演示了针对 NVIDIA Volta 、 Turing 和 Ampere 体系结构上实现的可编程高通Tensor 核的扭曲同步矩阵乘法操作。

CUTLASS 实现了高性能卷积(隐式 GEMM )。隐式 GEMM 是作为 GEMM 的卷积运算的公式。这允许 Cutslass 通过重用高度优化的 warp-wide GEMM 组件和以下组件来构建卷积。

关于作者

Matthew Nicely 于 2019 年 3 月加入 NVIDIA ,之前曾在美国 AL-Huntsville 的美国陆军航空和导弹研究开发与工程中心工作。在那里,他专注于 CUDA 算法开发和 Jetson 系列的优化。在 NVIDIA ,他曾在联邦部门工作,协助 CUDA 的开发和优化,以及在各种 NVIDIA 工具集上为客户提供教育和概念验证,最近转为 math libraries 产品经理。 2019 年,他获得了博士学位。计算机工程学位,专注于 GPU 的算法优化。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NVIDIA
    +关注

    关注

    14

    文章

    4862

    浏览量

    102742
  • CUDA
    +关注

    关注

    0

    文章

    121

    浏览量

    13587
收藏 人收藏

    评论

    相关推荐

    AI高性能计算平台是什么

    AI高性能计算平台不仅是AI技术发展的基石,更是推动AI应用落地、加速产业升级的重要工具。以下,是对AI高性能计算平台的介绍,由AI部落小编为您整理分享。
    的头像 发表于 11-11 09:56 70次阅读

    XD08M3232红外感应单片机拥有哪些配置实现高性能处理能力

    关于XD08M3232单片机采用哪些配置实现高性能处理能力并没有直接搜索结果提及。如下: 一、内核方面 增强型1T8051内核**** :XD08M3232是一款8位高性能Flash的接近感应单片机
    发表于 11-07 14:04

    Wolfspeed碳化硅助力实现高性能功率系统

    Wolfspeed碳化硅助力实现高性能功率系统
    发表于 10-24 10:51 0次下载

    请问如何用VCA810实现模拟乘法器?

    我在《德州仪器高性能单片机和模拟器件在高校中的应用和选型指南》中看见,书中说VCA810可以做为模拟乘法器使用,但是应用手册里的公式却不是V0=VC*Vin,而是一个带指数向的公式,所以我很好
    发表于 09-23 07:11

    克服设计难题-实现高性能接口

    电子发烧友网站提供《克服设计难题-实现高性能接口.pdf》资料免费下载
    发表于 08-28 09:41 0次下载
    克服设计难题-<b class='flag-5'>实现</b><b class='flag-5'>高性能</b>接口

    高性能计算集群的能耗优化

    高性能计算(HighPerformanceComputing,HPC)是指利用大规模并行计算机集群来解决复杂的科学和工程问题的技术。高性能计算集群的应用领域非常广泛,包括天气预报、生物信息学
    的头像 发表于 05-25 08:27 352次阅读
    <b class='flag-5'>高性能</b>计算集群的能耗优化

    构建高性能计算芯片

    计算的异构多核架构,对整个芯片行业的高性能 CPU 开发产生了影响。 这些芯片都不太可能进行商业销售。它们针对特定的数据类型和工作负载进行了优化,设计预算庞大,但可以通过提高性能和降低功耗来实现合理化。目标是在更小的面积上容纳更
    的头像 发表于 04-25 10:23 1268次阅读
    构建<b class='flag-5'>高性能</b>计算芯片

    大电流、高性能LED矩阵驱动器LP5866T数据表

    电子发烧友网站提供《大电流、高性能LED矩阵驱动器LP5866T数据表.pdf》资料免费下载
    发表于 03-22 16:11 0次下载
    大电流、<b class='flag-5'>高性能</b>LED<b class='flag-5'>矩阵</b>驱动器LP5866T数据表

    NVMe Host Controller IP实现高性能存储解决方案

    电子发烧友网站提供《NVMe Host Controller IP实现高性能存储解决方案.pdf》资料免费下载
    发表于 02-21 14:28 1次下载

    矩阵式变换器的拓扑结构和工作原理 矩阵式变换器的控制策略和仿真分析

    利用PSIM仿真软件对所设计的控制策略进行了验证,仿真结果证实,所设计的控制策略具有变频特性良好、谐波含量少、波形正弦性好等优势。该矩阵式变流器控制策略对高性能电力电子装置设计具有实际意义。
    的头像 发表于 12-26 14:07 2755次阅读
    <b class='flag-5'>矩阵</b>式变换器的拓扑结构和工作原理 <b class='flag-5'>矩阵</b>式变换器的控制策略和仿真分析

    详解CUTLASS的工作原理

    嗨,我们要开始了。我叫马修·尼斯利。我是NVIDIA的深度学习compiler PM,今天我将介绍一些针对NVIDIA Tensorcores的使用方法。首先我要讲一下Cutlass。我会给你一些
    的头像 发表于 12-26 09:49 1688次阅读
    详解<b class='flag-5'>CUTLASS</b>的工作原理

    FlashAttention2详解(性能比FlashAttention提升200%)

    GPU performance characteristics. GPU主要计算单元(如浮点运算单元)和内存层次结构。大多数现代GPU包含专用的低精度矩阵乘法单元(如Nvidia GPU的Tensor Core用于FP16/BF16矩阵
    的头像 发表于 11-24 16:21 1202次阅读
    FlashAttention2详解(<b class='flag-5'>性能</b>比FlashAttention提升200%)

    如何在有限空间里实现高性能?结合最低特定RDS(On)与表面贴装技术是个好方法!

    如何在有限空间里实现高性能?结合最低特定RDS(On)与表面贴装技术是个好方法!
    的头像 发表于 11-23 17:43 513次阅读
    如何在有限空间里<b class='flag-5'>实现</b><b class='flag-5'>高性能</b>?结合最低特定RDS(On)与表面贴装技术是个好方法!

    一种高性能多通道通用DMA设计与实现

    为充分发挥异构多核DSP芯片的实时计算能力,设计并实现了一种高性能多通道的通用DMA,该DMA最大支持64个通道的数据搬运,并支持一维、二维、转置以及级联描述符等多种传输模式。芯片实测传输性能最高可达11.7 GB/s,
    的头像 发表于 11-20 15:52 1064次阅读
    一种<b class='flag-5'>高性能</b>多通道通用DMA设计与<b class='flag-5'>实现</b>

    实现可靠高性能数字电源

    电子发烧友网站提供《实现可靠高性能数字电源.pdf》资料免费下载
    发表于 11-16 15:02 0次下载
    <b class='flag-5'>实现</b>可靠<b class='flag-5'>高性能</b>数字电源