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

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

3天内不再提示

清华「计图」现在支持国产芯片了!

旺材芯片 来源:凹非寺量子位 作者:明敏 2021-05-20 09:43 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

清华自研的深度学习框架计图(Jittor)在动态图推理速度上又一次完胜PyTorch。

最近,计图团队完成了在寒武纪芯片MLU270上的移植。

这一次跟寒武纪的合作,使Jittor在backbone网络模型中的动态图推理速度较PyTorch平均提升了276.69倍。

从团队公布的实验结果可以看到,在寒武纪芯片上分别用计图(Jittor)和PyTorch进行推理。

计图(Jittor)在16种backbone网络模型中的推理速度都较PyTorch大幅提升,其中包括alexnet、vgg系列、resnet系列。

其中最快的是alexnet,提升速度达到了464.43倍,最慢的resnet50也达到了153倍。

平均提升速度达276.69倍。

660375ea-b47b-11eb-bf61-12bb97331649.jpg

6611aa8e-b47b-11eb-bf61-12bb97331649.jpg

△表1:模型具体数值

与此同时,计图的精度损失也较PyTorch大幅减少。

66332ff6-b47b-11eb-bf61-12bb97331649.jpg

△表2:resnet18的mse误差对比

团队以resnet18网络为例进行对比,baseline是CPU;结果显示:计图的精度损失比PyTorch降低了42.53%。

还是「元算子」的功劳

性能得到如此大的提升,是怎么实现的呢?

要知道,在TensorFlow,PyTorch框架底层,有上千个算子;想要移植新的硬件,就必须将大量的算子复写,这样一来不仅工作量剧增、而且难度也会加大。

Jittor这次还是依靠他们的核心武器——元算子。

根据Jittor官方文档定义,元算子是指神经网络所需的基本算子。

早在设计Jittor的时候,研发团队就定下了一个目标,即用户只需要数行代码,就可定义新的算子和模型。在保证易用的同时,不丧失任何可定制性。

所以在Jittor中,多个元算子之间,可以相互融合成更加复杂的算子,这些复杂算子构成了神经网络计算的多个模块,如卷积层,归一化层等等。

664c0422-b47b-11eb-bf61-12bb97331649.jpg

△使用元算子实现卷积层

这一次将Jittor移植到寒武纪上,也是同样的原理。

研究团队把神经网络所需的基本算子,定义为三类共18个元算子。

让元算子相互融合形成常用算子,这样就能通过优化非常少的元算子,实现对常用算子性能的提升。

66677d4c-b47b-11eb-bf61-12bb97331649.jpg

并且,元算子还是反向传播闭包,所有元算子反向传播后依旧是元算子。

所以在完成三类元算子的移植后,Jittor天然就能支持大部分常用算子的推理和简单训练。

从Jittor元算子到BANG

为了能让用户更为简单地操作,Jittor内置了元算子编译器,可以将用户的Python代码动态编译成寒武纪BANG语言。

BANG语言是专门针对寒武纪产品架构的一种代码语言,它能极大优化寒武纪芯片的通用编程能力,提升用户编程的自由度。

并且它还有全套编译工具链来提高性能。包括CNCC(Cambricon Neuware Compiler Collection )、CNAS(Cambricon Neuware Assembler)、CNLINKER(Cambricon Neuware Linker)。

Jittor内置的元算子编译器可以把元算子自动转化为BANG算子。

采用动态编译的方式,能在运行时获取更多的信息,比如计算图上下文、形状信息等,这些信息都可以进一步提升算子的性能。

并且,Jittor还内置了可以根据硬件设备自动对BANG语言进行优化的优化编译遍(complier pass),从而生成对硬件设备更为适合的底层算子。

用这种方法,仅仅一行Python代码,就能表示BatchNorm算子的核心思想。

元算子编译器再把这行代码自动优化成BANG语言代码。

由于BANG语言的设计更加成熟,提供了类似于CUDA语言的线程调度模式,使得上手和调试都更加简单;也能更好地释放寒武纪芯片的算力。

6678e168-b47b-11eb-bf61-12bb97331649.jpg

清华自研,首个中国高校深度学习开源框架

计图(Jittor)的开发团队,均来自清华大学计算机系图形学实验室,负责人是清华大学计算机系的胡事民教授。

而主要负责开发的,则是来自实验室的博士生们:梁盾、杨国烨、杨国炜、周文洋……

计图(Jittor)与主流的深度学习框架TensorFlow、Pytorch等最大的不同在于,它是一个完全基于动态编译(Just-in-time)、使用元算子和统一计算图的深度学习框架。

它可以不像Pytorch那样依赖tracing机制,让用户的操作更加简单,同时还可以得到更好的学习训练效果。

对于这一次取得的成果,开发者之一梁盾透露未来有可能发表在顶会上,并且会开源给大家。

此前,计图开源的点云模型库,在多种主流模型上训练性能较Pytorch提升一倍以上;并发布了第一个支持金属度、粗糙度的可微渲染库。

最近,他们还开源了一个智能P图神器DeepFaceEditing,可以通过草图自由编辑人脸。

感兴趣的同学可以去试试哦~

GitHub开源:

https://github.com/IGLICT/DeepFaceEditing-Jittor

编辑:jq

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

    关注

    68

    文章

    11327

    浏览量

    225888
  • 神经网络
    +关注

    关注

    42

    文章

    4842

    浏览量

    108175
  • 寒武纪
    +关注

    关注

    13

    文章

    219

    浏览量

    75064
  • pytorch
    +关注

    关注

    2

    文章

    813

    浏览量

    14921

原文标题:关注 | 清华「计图」现在支持国产芯片了!动态图推理比PyTorch快了270倍

文章出处:【微信号:wc_ysj,微信公众号:旺材芯片】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    《一个国产 MCU 原厂支持 200+ 型号的工程实践记录》

    我们参与一个国产 MCU 原厂的 Studio 工具建设, 最终支持 200+ MCU 型号。 这里不谈功能,只谈工程实践。 一条非常重要的经验 不要试图给每个
    发表于 02-06 09:20

    PT153S是方寸微电子自主研发的一款全国产化USB千兆网卡芯片

    国产32位高性能RISC-VCPU,并集成国产USB3.0及以太网PHY,从设 、生产到封装全流程均在国内完成。同时该芯片提供完整的应用解决方案,可帮助客户缩 短产品开发周期、降低整
    发表于 02-02 14:31

    国产芯片真的 “稳” ?这家企业的 14nm 制程,已经悄悄渗透到这些行业…

    最近扒国产芯片的进展,发现中芯国际(官网链接:https://www.smics.com)的 14nm FinFET 制程已经不是 “实验室技术” —— 从消费电子的中端处理器
    发表于 11-25 21:03

    致远仪器 PA310功率:成为国产首款支持SPECpower™ 服务器能效测试的功率分析仪器

    本文导读致远仪器PA310功率新增SPECpower基准支持,成为国产首款支持SPECpower服务器能效测试的功率分析仪器,为服务器产业链的研发、选型与认证等环节,提供精准可靠的
    的头像 发表于 11-19 11:42 1788次阅读
    致远仪器 PA310功率<b class='flag-5'>计</b>:成为<b class='flag-5'>国产</b>首款<b class='flag-5'>支持</b>SPECpower™ 服务器能效测试的功率分析仪器

    爱芯元智出席第四届清华大学汽车芯片设计及产业应用研讨会

    近日,第四届清华大学汽车芯片设计及产业应用研讨会暨校友论坛在苏州市吴江区举行。作为清华大学自动化系校友,爱芯元智创始人兼董事长仇肖莘博士应邀发表主旨演讲,深入剖析高智价比AI
    的头像 发表于 11-02 09:18 563次阅读

    国产MCU开始卷开发工具?McuStudio是对STM32Cube的拙劣模仿还是真香逆袭?

    看到坛子里老生常谈国产MCU模仿STM32,现在战火已经烧到工具链。STM32Cube确实香,但现在国产阵营里像McuStudio这类图形
    发表于 10-31 10:18

    振弦式位移是否支持多点测量?

    振弦式位移是否支持多点测量?最近又用户向南京峟思咨询这样的问题,那么今天就此问题来给大家做出具体的介绍。振弦式位移是否支持多点测量需根据设备类型进行区分。我司提供的单点位移
    的头像 发表于 08-25 11:12 730次阅读
    振弦式位移<b class='flag-5'>计</b>是否<b class='flag-5'>支持</b>多点测量?

    #电路知识 #芯片 #国产芯片

    国产芯片行业资讯
    芯佰微电子
    发布于 :2025年04月29日 10:19:29

    国产SL4013芯片如何实现USB 5V升压至24V以上?

    可靠且易用的解决方案。随着国产芯片技术的持续突破,SL4013将在工业自动化、智能硬件等领域展现更大价值。 提供样品 技术支持 原理
    发表于 04-28 17:39