任何事物一旦进入泡沫期,就不免让人担心什么时候会崩盘,而当下的 AI 芯片已经进入公认的泡沫期。
从 ASPLOS'14 上寒武纪的 DianNao,到当下 Google 的 TPUv3,AI 芯片只花了五年时间就取得了巨大的成功。搭上 AI 算力爆发的快车道,叫嚷着摩尔定律终结,Domain Specific Architecture(领域定制架构) 似乎成了唯一的出路。
可是当无数的巨头和初创公司设计出一块又一块大同小异的 AI 芯片,我们需要回答这样一个问题:真的需要这么多 AI 芯片吗?
软件复杂度
AI 芯片的快速发展,其中一个回避不了的问题就是软件复杂度的指数级提升。很多公司花了两年甚至更短的时间做出一款芯片,却发现需要更长的时间支持繁多的框架、紧跟算法的进步,适配从手机到数据中心的各类平台。当错过了部署和量产的窗口期,即便做出了芯片也会很快落伍。与设计通用架构不同,设计 AI 芯片这样的专用架构需要同时考虑到软件的设计和优化。芯片公司往往乐观估计了软件适配和优化的成本,指望通过中间件和编译器来解决所有问题。事实上,从 Intel 到 Google 再到 Nvidia,大量的软件工程师正被投入到适配各种平台,手动优化网络性能当中。而对于初创公司,芯片早已 tapeout 却一再延期交付的问题比比皆是。
从本质来看,当我们开始不断挖掘芯片架构的潜力时,软件层的抽象也会变的越来越困难,因为其不得不在上层抽象中引入底层的架构的模型或参数。现在的通常做法是做底层芯片架构与上层软件之间的中间件,然而开发这些中间件的代价也往往被低估。前段时间某芯片初创公司的同学咨询我,开发一套类似 TensorRT 这样的 Inference 中间件需要多少人力和多长时间?这并不是一个容易回答的问题,于是我反问他们有多少资源可以做这个项目。
令人意外的是,他的老板只给了三四个人头,因为他们假设自己已经有了一套底层的编译器和一套上层的模型转换工具,于是这样一个用于架构抽象的中间件并不需要太大力气。我猜这样的投入应该可以做出一个功能完好的产品,但我不相信最终的产品在实际应用中可以达到理想的性能指标,毕竟做芯片并不只是用来跑 ResNet-50 这样的 Benchmark。
碎片化
只需要编写一套代码即可运行在不同平台,是软件工程师们的长久诉求。不同架构的 AI 芯片带来的碎片化会极大的打击他们在实际软件产品中应用 AI 的积极性。与以往的经验不同,深度学习糟糕的解释性会带来许多意想不到的缺陷。比如这样一个常见的困扰,一个私有的模型可以在本地 CPU 上得到满意的结果,然而却在部署到某款设备后性能大幅下降。如何调试这些问题,谁来负责调试,通过怎样的工具来调试,甚至调试的工程师能否拿到私有的模型?这些问题都难以回答。碎片化还表现在,专有架构为了挖掘绝对性能往往会放弃向前兼容性。如上文提到的中间件,它的一端是碎片化的 AI 软件框架,另一端则是一代又一代的芯片架构。如何同时维护多个部分不兼容的指令集架构,并保证每一次软件更新都能完整的覆盖所有的设备?除了投入更多的人力,别无他法。一个常见的论调是像当下的消费级芯片一样只保持一个短期的(2-3年的)软件支持,然而当下 AI 芯片的常见应用领域,如智能摄像头、工业智能、以及自动驾驶,一款芯片的生命周期可能长达十年。很难想象一家公司需要多大的量级才能提供持久的技术支持,如果预估一家初创公司活不过两三年,如何才能放心的部署其产品到一款面向消费者的量产车上?
AI 芯片只是过渡期产物
从一个软件工程师的角度,我个人坚信定制化的 AI 处理器只会是一个过渡期产物。一个统一的、可编程的、高并发的架构才应该是我们追求的方向。回想过去的二十年,我们见证了专用架构的小型机市场的萎缩,图形处理器到通用向量处理器的发展,甚至连我们的手机和电脑的平台都将趋于统一。有理由相信,现在再把资源投入到定制化的 AI 芯片绝不是一个好的投资。来源:知乎 Max Lv
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
芯片
+关注
关注
460文章
52736浏览量
444072 -
AI
+关注
关注
88文章
35757浏览量
282422 -
人工智能
+关注
关注
1810文章
49221浏览量
251503 -
架构
+关注
关注
1文章
530浏览量
26086 -
软件框架
+关注
关注
0文章
22浏览量
10050
发布评论请先 登录
相关推荐
热点推荐
STM32和MCP2515通信,STM32这端还需要接CAN PHY吗?
最近在做CAN通信的相关项目,STM32G4负责接收,对端是一个MCP2510+TJA1040的组合,
想问下应该如何接?STM32这端还需要接CAN PHY吗?
发表于 03-10 06:18
hyper内存条,hyper-v 添加虚拟机还需要硬盘吗
在计算机技术的浩瀚星空中,虚拟机犹如一颗璀璨的明星,散发着独特的光芒。今天给大家介绍hyper-v添加虚拟机还需要硬盘吗? ? ?hyper-v添加虚拟机还需要硬盘吗? ? ?Hyper-V是虚拟机

ADC324x的CLK和SYSREF信号由CDCE62005提供合适吗?是否还需要向FPGA提供SYSREF信号?
你好,我想将ADC324X采集到的数据给FPGA,实在不太确定这个SYSREF信号怎么配置,如下图所示。ADC324x的CLK和SYSREF信号由CDCE62005提供合适吗?是否还需要向FPGA
发表于 01-02 06:15
ADS1293EVM如果用ubs连接电脑,还需要外部供电吗?
你好,我是一名在校大学生,刚刚接触ADS1293问题多多,请问如果用ubs连接电脑,还需要外部供电吗?是不是只需要四根线将电极和输入端口连接,就可以用自带的软件测出心电图?万分感谢!
发表于 01-01 06:42
DAC5681z从FPGA读数据,为什么还需要一个DCLKP/N呢?
以DAC5681z为例,DAC芯片从FPGA读数据,然后按照自己的采样速率CLKIN/CLKINC 每隔16bit转换成1个电平值,为什么还需要一个DCLKP/N呢?
发表于 12-11 07:52
电机控制使用AMC1200或AMC1306等芯片,在线上采样电流时是否还需要做PWM的触发同步?
电机控制使用AMC1200或AMC1306等芯片,在线上采样电流时是否还需要做PWM的触发同步?
在线上采样电流,电流应该是连续的,是否能一直读取电流信号而忽略PWM的开关时刻。
如果这么做,是否有必要担心大功率的开关噪声会影响电流采样
发表于 12-10 08:12
TXS01088E能不能直接把OE连接到VCCA,是否还需要加上拉、下拉电阻之类的?
TXS0108E的使能引脚是OE端,应该参考的是VCCA。如果我想这个芯片在供电情况下一直处于被使能状态,能不能直接把OE连接到VCCA,是否还需要加上拉、下拉电阻之类的。。
如果加电阻的话,需要多大?
发表于 12-05 08:11
ADS62P49降低采样率,使用50M采样,除了“enable low speed mode”的寄存器,还需要更改其他的设置吗?
配置,输出时钟的频率是50MHz。
也改了ads62p49的“enable low speed mode”的寄存器,但是各种测试模式、正弦波出现的波形一直不对。
想问下还需更改哪些ads62p49的配置。除了“enable low speed mode”的寄存器,还需要更
发表于 11-18 07:04
企业上云后还需要数据库运维吗?真实答案看过来!
企业上云后还需要数据库运维吗?企业上云后,数据库运维仍然是必不可少的。尽管云计算带来了许多便利和自动化功能,但数据库作为企业核心数据存储和管理的关键组件,其运维工作依然需要高度重视。以下是UU云小编对这一观点的详细阐述:
新思科技探索AI+EDA的更多可能性
芯片设计复杂性的快速指数级增长给开发者带来了巨大的挑战,整个行业不仅要向埃米级发展、Muiti-Die系统和工艺节点迁移所带来的挑战,还需要应对愈加紧迫的上市时间目标、不断增加的制造测试成本以及人才短缺等问题。早在AI大热之前,
评论