CPU比GPU训练神经网络快十几倍,英特尔:别用矩阵运算了

SIFT、ORB算法(SSE,GPU)加速 对于特征点匹配算法,特征点的提取计算消耗的时间决定了算法是否能达到实时的要求,在速度提升上面做了一些工作总结 特点和区别 SIFT特征是图像的局部特征,对平移、旋转、尺度缩放、亮度变化、遮挡和噪声等具有良好的不变性,对视觉变化、仿射变换也保持一定程度的稳定性。 ORB:An Efficient Alternative to SIFT or SURF”的文章中提出:http://iee 阅读详情

来自|机器之心  编辑|维度、陈萍

神经网络训练通常是 GPU 大显身手的领域,然而莱斯大学和英特尔等机构对 GPU 的地位发起了挑战。

在深度学习与神经网络领域,研究人员通常离不开 GPU。得益于 GPU 极高内存带宽和较多核心数,研究人员可以更快地获得模型训练的结果。与此同时,CPU 受限于自身较少的核心数,计算运行需要较长的时间,因而不适用于深度学习模型以及神经网络的训练。

但近日,莱斯大学、蚂蚁集团和英特尔等机构的研究者发表了一篇论文,表明了在消费级 CPU 上运行的 AI 软件,其训练深度神经网络的速度是 GPU 的 15 倍。这篇论文已被 MLSys 2021 会议接收。

论文链接:https://proceedings.mlsys.org/paper/2021/file/3636638817772e42b59d74cff571fbb3-Paper.pdf

论文通讯作者、莱斯大学布朗工程学院的计算机科学助理教授 Anshumali Shrivastava 表示:「训练成本是 AI 发展的主要瓶颈,一些公司每周就要花费数百万美元来训练和微调 AI 工作负载。」他们的这项研究旨在解决 AI 发展中的训练成本瓶颈。

Anshumali Shrivastava。

研究动机及进展

深度神经网络(DNN)是一种强大的人工智能,在某些任务上超越了人类。DNN 训练通常是一系列的矩阵乘法运算,是 GPU 理想的工作负载,速度大约是 CPU 的 3 倍。

如今,整个行业都专注于改进并实现更快的矩阵乘法运算。研究人员也都在寻找专门的硬件和架构来推动矩阵乘法,他们甚至在讨论用于特定深度学习的专用硬件 - 软件堆栈。

Shrivastava 领导的实验室在 2019 年做到了这一点,将 DNN 训练转换为可以用哈希表解决的搜索问题。他们设计的亚线性深度学习引擎(sub-linear deep learning engine, SLIDE)是专门为运行在消费级 CPU 上而设计的,Shrivastava 和英特尔的合作伙伴在 MLSys 2020 会议上就公布了该技术。他们表示,该技术可以超越基于 GPU 的训练。

在 MLSys 2021 大会上,研究者探讨了在现代 CPU 中,使用矢量化和内存优化加速器是否可以提高 SLIDE 的性能。

论文一作、莱斯大学 ML 博士生 Shabnam Daghaghi 表示:「基于哈希表的加速已经超越了 GPU。我们利用这些创新进一步推动 SLIDE,结果表明即使不专注于矩阵运算,也可以利用 CPU 的能力,并且训练 AI 模型的速度是性能最佳专用 GPU 的 4 至 15 倍。」

Shabnam Daghaghi。

此外,论文二作、莱斯大学计算机科学与数学本科生 Nicholas Meisburger 认为,CPU 仍然是计算领域最普遍的硬件,其对 AI 的贡献无可估量。

技术细节

在本论文中,该研究重新了解了在两个现代 Intel CPU 上的 SLIDE 系统,了解 CPU 在训练大型深度学习模型方面的真正潜力。该研究允许 SLIDE 利用现代 CPU 中的矢量化、量化和一些内存优化。与未优化的 SLIDE 相比,在相同的硬件上,该研究的优化工作带来了 2-7 倍的训练时间加速。

SLIDE 的工作流程包括:初始化、前向-反向传播和哈希表更新。下图 1 为前向-反向传播工作流程图:

前向和后向传播示意图。

该研究专注于大规模评估,其中所需的神经网络拥有数亿个参数。在两台 Intel  CPU 上比较了优化的 SLIDE,分别是 Cooper Laker 服务器(CPX)和 Cascade Lake 服务器(CLX),并与以下以下 5 个基准进行了对比:

  • 1)V100 GPU 上的 full-softmax tensorflow 实现;

  • 2) CPX 上的 full-softmax tensorflow 实现; 

  • 3)CLX 上的 full-softmax tensorflow 实现;

  • 4)CPX 上的 Naive SLIDE;

  • 5)CLX 上的 Naive SLIDE。

其中,CPX 是英特尔第三代至强可扩展处理器,支持基于 AVX512 的 BF16 指令。CLX 版本更老,不支持 BF16 指令。

研究者在三个真实的公共数据集上评估了框架和其他基准。Amazon670K 是用于推荐系统的 Kaggle 数据集;WikiLSH-325K 数据集和 Text8 是 NLP 数据集。详细统计数据见下表 1:

对于 Amazon-670K 和 WikiLSH-325K,研究者使用了一个标准的全连接神经网络,隐藏层大小为 128,其中输入和输出都是多个热编码向量。对于 Text8,该研究使用标准 word2vec 语言模型,隐藏层大小为 200,其中输入和输出分别是一个热编码向量和多个热编码向量。

下图 6 第一行代表所有数据集的时间收敛图,结果显示了该研究提出的优化 SLIDE 在 CPX 和 CLX(深绿色和浅绿色)上训练时间优于其他基准 。图 6 的底部行显示了所有数据集的柱状图。

下表 2 给出了三个数据集上的详细数值结果:

下表 3 中,研究者展示了 BF16 指令对每个 epoch 平均训练时间的影响。结果表明,在 Amazon-670K 和 WikiLSH325K 上,激活和权重中使用 BF16 指令分别将性能提升了 1.28 倍和 1.39 倍。但是,在 Text8 上使用 BF16 没有产生影响。

下表 4 展示了有无 AVX-512 时,优化 SLIDE 在三个数据集上的每个 epoch 平均训练时间对比。结果表明,AVX-512 的矢量化将平均训练时间减少了 1.2 倍。

参考链接:

https://techxplore.com/news/2021-04-rice-intel-optimize-ai-commodity.html

eSLAM: FPGA平台上实时ORB-SLAM节能加速器 同步定位和映射 (SLAM) 是自主导航的关键任务。然而,由于SLAM算法的计算复杂度,在低功耗平台上很难实现实时实现。我们提出了一种基于实时ORB(面向FAST和旋转BRIEF)的视觉SLAM系统的节能架构,通过加速FPGA平台上特征提取和匹配的最耗时的阶段。此外,原始的 ORB 描述符模式被重新形成为旋转对称方式,这更加硬件友好。进一步利用重调度和并行化等优化来提高吞吐量并减少内存占用。 阅读详情

相关推荐

关于 CPU、GPU、NPU 的详细介绍

现代设备(如AIPC)依赖三者协同,未来随着AI普及,NPU的重要性将进一步提升。

1476

GPU加速的orb算法例程

ORB算法算是OpenCV自己提出来的算法 所以不管是C++还是CUDA代码在OpenCV里面都是有的 今天测试一下ORB算法以及使用GPU加速的ORB算法,其实代码很类似,只是接口的转换而已

bisheng250的博客 5920

PyTorch 2.5 CNN 模型部署对比:CPU vs GPU 在MNIST训练上的10倍速度差异

本文对比了PyTorch 2.5 CNN模型在CPU和GPU上训练MNIST数据集的性能差异,揭示了GPU带来的10倍速度提升。通过详细的实验数据和资源利用率分析,提供了优化建议和实际部署指南,帮助开发者充分利用硬件加速深度学习训练。

cuixie2370的博客 260

SLAM硬件加速之FPGA-base ORB(1)——Image Pyramid

针对slam应用,基于FPGA实现的ORB加速方案总结

weixin_40817208的博客 1453

GPU加速与L-ORB特征提取的全景视频实时拼接

GPU加速与L-ORB特征提取的全景视频实时拼接,。。。。。。

STM32硬件SPI驱动W5500以太网模块全流程(附避坑指南)

本文详细介绍了如何使用STM32硬件SPI驱动W5500以太网模块,包括开发环境准备、SPI接口配置、网络参数设置及常见问题排查。通过官方驱动移植和实战案例,帮助开发者快速实现以太网通信功能,适用于智能家居、工业控制等物联网应用场景。

weixin_29192141的博客 364

CPU 比 GPU 训练神经网络快十几倍,英特尔:别用矩阵运算了

点击上方“视学算法”,选择加"星标"或“置顶”重磅干货,第一时间送达转自 | 机器之心编辑 | 维度、陈萍神经网络训练通常是 GPU 大显身手的领域,然而莱斯大学和英特尔等...

zandaoguang的博客 361

跟着团子学SAP CO:基于成本的完工百分比结算:Cost-based POC(以项目为例)

本文以英国及北美会计准则下的基于成本的POC的销售型项目结算对PS模块中的完工百分比进行介绍

Lucas1211的博客 2万+

本周AI热点回顾:英伟达颠覆CPU!ARM架构性能还高10倍;CPU 比 GPU 训练神经网络快十几倍?英特尔:别用矩阵运算了!...

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍点击左上方蓝字关注我们01英伟达颠覆CPU!长发黄仁勋杀入英特尔地盘,ARM架构CPU性能高10倍英伟达凡尔赛一号玩家黄仁勋来了!他带着自家ARM架构C...

PaddlePaddle 440

『ISOBUS 入门』第 00 节 导言:ISOBUS 的宏观图景与入门路径

ISOBUS 是由三部分构成的集成系统:两段CAN网络(拖拉机与农具侧)、标准化通信约定及认证流程。其核心在于通过统一协议实现跨品牌设备即插即用。标准体系以ISO 11783为基础,分层涵盖物理层、传输层至应用层,关键功能如虚拟终端(VT)、任务控制器(TC)和文件服务器依赖严格的会话管理与角色分工。实际部署中,总线上传输多种协议报文,故障排查需结合地址声明、多包传输与角色权限分析。学习应从真实报文入手,建立“角色—数据流—功能块”认知链,避免仅学标准或仿真替代实测,方能有效应对复杂现场问题。

linx295的博客 286

飞腾E2000单板移植openEuler 5.10内核与麒麟系统的实践指南

本文详细介绍了在飞腾E2000单板上移植openEuler 5.10内核并搭配麒麟系统根文件系统的完整实践指南。内容涵盖从编译环境搭建、内核配置裁剪、设备树适配,到根文件系统准备、U-Boot引导配置及启动调试的全流程,旨在帮助开发者打造一个内核版本新、软件生态全的稳定混合系统。

weixin_29309475的博客 262

谷歌、亚马逊的顶级GPU被质疑太贵了!这种CPU算法竟然快15倍

来源丨外媒、新智元编辑丨LZY赖斯大学的计算机科学家创造了一种替代GPU的方法,该算法使用通用中央处理器(CPU),并指出其训练深度神经网络(DNN) 的速度超过图形处理器平台(GPU)速...

3D视觉工坊 601

PCIe Electrical PHY(4)-PCIE SPEC第8章指标讲解

1.1 PCIE TX SPEC TX主要关心两类参数,一类是Voltage Parameters,一类是Jitter Parameters。 其中Voltage相关参数主要关心不同preset下差分电压幅度的准确性。以及共模电压的稳定性。 PCIE spec中对Jitter相关的参数测量定义如下: 分为两大类:DDJ(Data dependent Jitter)和UJ(Uncorrelated ...

maxwell2ic的博客 5953

python矩阵运算法则_CPU上的矩阵乘法(numpy)和GPU上的矩阵乘法(gnumpy)给出了不同的结果...

我用gnumpy在GPU上训练神经网络来加速一些计算。我得到了期望的加速,但是有点担心numpy(cpu)和gnumpy(gpu)的结果之间的差异。我有以下测试脚本来说明问题:import gnumpy as gpuimport numpy as npn = 400a = np.random.uniform(low=0., high=1., size=(n, n)).astype(np.float...

weixin_31546795的博客 928

3D视觉革命丨多相机协同拼接技术如何重塑工业检测边界

本文深入探讨了多相机协同拼接技术如何突破单台3D相机的物理局限,实现工业检测从“点面”到“立体”的无死角覆盖。通过拆解系统标定、同步融合等核心技术,并结合锂电池、长轴零件等实战案例,揭示了该技术如何以虚拟“超级视觉传感器”重塑检测边界,提升精度与效率。

weixin_29056865的博客 388

CGAL 网格等高线计算

CGAL 网格等高线计算

dayuhaitang1的博客 452

GPU 与 CPU 在人工智能开发中的优劣剖析及 PyTorch 安装指南-CPU

摘要:本文探讨在人工智能开发中 GPU 较 CPU 表现更优的原因。从计算能力与架构、内存带宽与数据传输、计算速度与功耗以及专用硬件支持四个维度展开分析,指出 GPU 因大量核心、高内存带宽、快速计算与低功耗及完善的专用硬件支持,在深度学习等并行计算任务中优势显著,而 CPU 虽在特定任务有作用,但整体逊色于 GPU。此外,文章还提供了在命令提示符、PowerShell 及 conda 环境下安装 PyTorch 的具体步骤,为人工智能开发的环境搭建提供实用指导 。

geyaliang的博客 1329

Vue2 - 详细实现网页 “开启录音并生成音频文件,上传到服务器效果“,浏览器录制外部音频调用麦克风并传到后端,兼容全部浏览器、支持 PC 网页或手机 H5 网页、可本地播放试听(详细示例运行代码)

vue,nuxt,uniapp,网页网站,麦克风,网页录音,MediaRecorder,浏览器录音,移动端h5网页,手机端录音,web网页录音,recorder-core官方文档,Recorder,非https怎么本地录音,录音报错失败,录音后怎么播放音频,如何获取录音mp3文件,解决一直不提示麦克风权限,小白详细教程,实时录音,调用浏览器麦克风录音,浏览器不兼容,wav,mp3,vue怎么实现网页录音呢,vue2网页录音并上传到服务器,web如何实现录制音频,vue网页录音,音频录制播放和上传服务器,vu

🏆 前端领域优质创作者 6005

CPU TPU GPU 特点及应用场景

CPU(中央处理器)、TPU(张量处理单元)和 GPU(图形处理器)是三种不同的处理器,它们主要有以下区别:一、基本架构和设计目标CPUGPUTPU二、性能特点CPUGPUTPU三、应用场景CPUGPUTPU

智能化技术分享 1565

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

2023 英特尔On技术创新大会直播 | 边云协同加速 AI 解决方案商业化落地

最近观看了英特尔On技术创新大会直播,学到了挺多知识,其中对`英特尔高级首席 AI 工程张宇博士`讲解的边云协同加速 AI 解决方案商业化落地特别感兴趣。`张宇博士`讲解了英特尔如何利用边云协调来加速AI解决方案的商业化落地以及对边缘人工智能发展趋势的判断以及在促进边缘人工智能落地方面在硬件、软件方面正在进行的创新。

编码世界 1万+

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

上一篇: 机器学习模型评估教程!
下一篇: 实操教程|PyTorch AutoGrad C++层实现
机器学习算法那些事
博客等级 码龄9年 1633粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值