AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

NVIDIA 发布新的 C++ 数值计算库:支持 GPU 加速

  • 2023-11-15
    北京
  • 本文字数:843 字

    阅读完需:约 3 分钟

大小:385.53K时长:02:11
NVIDIA发布新的C++数值计算库:支持GPU加速

 MatX 是一个 C++ 库由 Nvidia 为其自有的 GPU 开发,,旨在使用高级语法在数值计算中实现接近本地性能,不遑多让于 Python 的 scipy 或 MATLAB。它的最新版本引入了许多新功能,包括可以将变换作为运算符,以及新的运算符,如上采样、下采样、pwelch 等等。

 

现在,可以在任何运算符表达式中使用变换,以使用运算符融合来进行延迟评估。运算符融合是 MatX 中的一个特殊功能,旨在提高性能,通过减少内存访问,从而避免内存访问成本相对寄存器访问昂贵数个数量级的问题。

 

旨在通过减少内存访问来提高性能,内存访问的成本可能比寄存器访问高出几个数量级。使用运算符融合,一个表达式不会立即计算,而是转换为表示该表达式的 C++ 类型,该类型将在需要其值时进行评估。换句话说,不是立即计算表达式的结果,比如:

 

(A = B * (cos(C) / D)).run();
复制代码

 

你可以将其值存储在一个中间表达式中:

 

auto op = (B * (cos(C) / D));
复制代码

 

将其与其他表达式组合,并在需要时进行延迟评估。这一特性是通过重载 C++ 运算符实现的。MatX 的最新版本将这一功能扩展到了变换中,例如在以下表达式中:

 

(A = B * fft(C)).run();
复制代码

 

编译器能够理解乘法运算符的右侧是 FFT 变换,而左侧是另一个表达式,可以在编译时与前者的结果进行融合

 

值得注意的是,将变换用作运算符的这种新语法与以前的变换使用方式存在一些不兼容。具体而言,以前你可能会写成matmul(C, A, B, stream),而现在应该使用(C = matmul(A,B)).run(stream)

 

MatX 0.6.0 引入的另一个新功能是新的多相通道化运算符,它可以将输入信号分成一组通道。例如,它可用于将高采样率的宽带信号转换为多个低采样率的窄带信号。

 

新的运算符包括 `upsample`,用于通过插入零来上采样信号;downsample,用于通过丢弃样本来下采样信号;pwelch,用于可视化信号的频谱,而无需进行预处理。

 

MatX 的最新版本拥有更多功能,此处无法详尽列出。如果你对完整细节感兴趣,不要错过官方发布说明。

 

原文链接:

https://www.infoq.com/news/2023/10/Nvidia-matx-cpp-numerical-lib/

2023-11-15 08:004737

评论

发布
暂无评论
发现更多内容

线性稳压器LDO的基础知识

梦笔生花

芯片 LDO 电源

Apache IoTDB 走进东南大学,深入分享项目发展历程与收获

Apache IoTDB

第55期|GPTSecurity周报

云起无垠

【程序设计】做一个发送系统邮件的功能,如何设计数据表?

靠谱的程序员

程序设计

AI大佬都在说下一个爆点是智能体,建议开发者抢占先机!

AI浩

智能体

MMPsy 数据集:数业智能心大陆在多模态心理评估中的创新与应用

心大陆多智能体

人工智能 数据分析 数据集 多模态 数字心理

专访 Altair 大中华区总经理刘源博士:仿真拥抱人工智能,Altair 打造数字孪生新生态

Altair RapidMiner

人工智能 机器学习 数据分析 altair

云电竞平台测评

Yan-英杰

Java实现基于ArrayList的生产者/消费者

极客罗杰

蓝易云 - centos脚本获取昨天日期删除指定文件之外的其他文件

百度搜索:蓝易云

云计算 Linux 服务器 系统 云服务器

Apache IoTDB 走进东南大学,深入分享项目发展历程与收获

Apache IoTDB

Apache IoTDB 走进东南大学,深入分享项目发展历程与收获

Apache IoTDB

又来了!涛思数据成为中关村物联网产业联盟高级会员单位

TDengine

数据库 tdengine 时序数据库

电竞直播APP软件开发公司哪家好?现成源码由哪些优势

软件开发-梦幻运营部

蓝易云 - 关于openfeign的http和rpc

百度搜索:蓝易云

云计算 Web 服务器 云服务器 openfeign

特价最后一周

开源物联卡管理平台-设备管理

物联网 IoT eSIM安全 java 技术提升

ae 2021下载安装版:After Effects 2021 for Mac/win版 激活版

你的猪会飞吗

mac软件下载 苹果软件下载

云服务与低代码开发的结合:重塑现代软件开发模式

快乐非自愿限量之名

云原生 低代码 云服务

直播预告丨华为数字化转型解决方案,助力钢铁行业飞越“寒冬”!

YG科技

从 MySQL 到 MongoDB 再到 TDengine,这家能源企业这样应对数据挑战

TDengine

数据库 tdengine 时序数据库

HarmonyOS NEXT大揭秘进入倒计时:HDC 2024华为开发者大会精彩亮点抢先看

最新动态

利用Python语言调用腾讯混元大模型接口实战指南

幂简集成

Python API 大模型

接口测试:Mock 的价值与意义

霍格沃兹测试开发学社

AIGC在保险场景中的视觉应用

京东科技开发者

蓝易云 - linux系统中rootfs根文件系统制作及挂载基本操作

百度搜索:蓝易云

Linux 运维 服务器 云服务器 rootfs

连续两年入选CVPR !快手KVQ,大模型加持的视频质量评价“黄金眼”

快手技术

音视频 快手 KVQ

一键获取企业“松弛感”

脑极体

云服务

极速查询:StarRocks 存算分离 Compaction 原理 & 调优指南

StarRocks

云计算 大数据 数据仓库 数据湖 湖仓一体

游戏部署换新季,华为云618营销季助力游戏企业闯关升级

YG科技

浅拷贝、深拷贝与序列化【初级Java必需理解的概念】

快乐非自愿限量之名

Java 拷贝

最适合ZKsync主网和撸空投的4个钱包推荐,bitget钱包

股市老人

NVIDIA发布新的C++数值计算库:支持GPU加速_编程语言_Sergio De Simone_InfoQ精选文章