寒武紀神經網路處理器效能如何 ?

中國科學院計算技術研究所陳雲霽、陳天石課題組提出的深度學習處理器指令集DianNaoYu被計算機體系結構領域頂級國際會議ISCA2016(InternationalSymposiumonComputerArchitecture)所接收,其評分排名所有近300篇投稿的第一名。模擬實驗表明,採用DianNaoYu指令集的寒武紀深度學習處理器相對於x86指令集的CPU有兩個數量級的性能提升。

DianNao是寒武紀系列的第一個原型處理器結構,包含一個處理器核,主頻為0.98GHz,峰值性能達每秒4520億次神經網路基本運算,65nm工藝下功耗為0.485W,面積3.02mm2。在若干代表性神經網路上的實驗結果表明,DianNao的平均性能超過主流CPU核的100倍,但是面積和功耗僅為1/10,效能提升可達三個數量級;DianNao的平均性能與主流GPGPU相當,但面積和功耗僅為主流GPGPU百分之一量級。


3月23日聽了陳老師的報告,感覺受益良多。


陳老師課題組做的工作應該算是很開創性的工作了。以往我們總是說國內的科研人員做課題喜歡跟熱點湊熱鬧,現在看來全球的研究人員其實也都是這樣——陳老師的工作發表以後,去年一年國際上就有幾十篇paper跟住了他們,針對他們的工作做了一些改進。


陳老師首先介紹了為什麼要有神經網路處理器:

CPU/GPU用於智能信息的處理時,效率十分低下,谷歌大腦項目用了1.6萬個CPU核跑了7天才完成貓臉識別。為了追求更高的識別能力,神經網路的規模正在快速增長。目前阻礙Deep Learning發展的很大的一個瓶頸就是速度了。他認為要克服這個瓶頸,神經網路處理器是迄今為止最好解決方案。


而且回顧計算的歷史,我們會發現一個從通用計算走向專用計算的一個細分趨勢:

圖形處理-&> GPU

信號處理-&> DSP

認知處理-&> 神經網路處理器


其實我本來是挺想把神經網路處理器叫NNP(Neural Network Processor)的,但陳老師他們把它起了名字叫DianNao(電腦)。這裡面還有一段淵源:

本來陳老師課題組想給這個晶元起個electric brain之類的名字的,後來與陳老師課題組合作的一位法國學者建議他們給成果起個中文名字,這樣對於法國方面來說是外文,顯得比較「洋氣」。


要說效能的話,我們可以擺一點數據:1GHz, 0.485W@65nm, 通用CPU 1/10的面積,100的性能。但是我覺得這個數據放在這裡並沒有太大的意義。首先,DianNao系列處理器現在並沒有完全進入商業生產階段,晶元製程方面的優化應該還有很大的餘地。其次,他是神經網路處理器,算的東西跟通用CPU不一樣。發明有先後,術業有專攻,你讓GPU跟CPU去比浮點計算能力意義也不大。

如果硬要比的話,從陳老師課題組2012年的成果來看,在計算DNN,CNN,MLP,SOM等人工神經網路演算法時,他們可以用CPU(Xeon E5-4620)和GPU(K20M)十分之一的面積,分別達到CPU-117倍,GPU-1.1倍的性能。

不從上面數據的角度看,我認為利用DianNao來做神經網路的運算,主要的優點有兩個:

1、由於硬體的支持,效率的提升是成數量級的。

2、DianNao支持任意規模的神經網路!

這裡任意規模神經網路很值得我們關注一下,這也是他們的處理器技術關鍵點所在。傳統的神經網路晶元的做法是把硬體運算單元和演算法神經元一一對應起來,這樣一來只能對一個固定的神經網路進行計算。他們採用了對小尺度神經網路分時復用的方法來支持任意規模的神經網路,這個做法很厲害,極大地提高了晶元對於不同演算法的能力。

從08年到16年的這八年里,陳老師課題組針對神經網路處理器做了一系列的出色研究:

12年國際首個神經網路硬體測試集

13年國際首個深度學習處理器

DianNao(電腦):ASPLOS"14最佳論文 亞洲首獲計算機硬體A類會議最佳論文

14年國際首個深度學習多核處理器

DaDianNao(大電腦):MICRO"14最佳論文

15年國際首個通用機器學習處理器

PuDianNao(普電腦):ASPLOS"15

15年攝像頭上的智能識別IP

ShiDianNao(視電腦) ISCA"15

16年國際首個神經網路通用指令集

DianNaoYu(電腦語)ISCA2016接收,分數第一

小預告:

TingDianNao(聽電腦)也快出來啦


針對這個晶元,陳老師課題組還成立了公司,申請了一系列專利保護,目前也在和華為三星等一系列企業洽談合作。相信不久將來我們就可以在移動設備上看見DianNao的應用了。


真棒,祝他們成功。


正好最近因為一些需要,在系統性的關注AI硬體加速方面的東西,
也找來陳博士的研究團隊最新的ISCA 2016文章《Cambricon: An Instruction Set Architecture for Neural Networks》研讀了一下。分享一下我閱讀這篇論文之後的一些總結及點評感想(直接插入在正文中,沒有刻意區分)。
這篇論文[1]實際上是陳氏兄弟圍繞AI加速器(雖然他們主要的工作集中在神經網路硬體加速上,但是也有一些工作加入了對其他機器學習演算法的支持,比如Linear Regression/Naive Bayes/KNN/K-Means/SVM/etc.,所以用AI加速器來代指會更為全面)這個領域開展的一系列工作中的一個,也是public出來的最新的工作。

介紹這篇論文,有必要先簡要回顧一下陳氏兄弟的相關工作歷程。

AI加速器這個概念的始作俑者其實並不是陳氏兄弟,而是Inria[10]的Temam教授。在ISCA 2010上,Temam教授做了一個名為「The Rebirth of Neural Networks」的talk[4]。在這個talk里,Temam首次提出了機器學習加速器的思想,並回顧了07年Larochelle和Bengio他們在Deep Neural Network上的一個評估工作[5],在這個工作里,Larochelle他們在一些識別任務上驗證了通過增加網路層數可以獲得比shallow model更強大的建模能力。在回顧深度神經網路相比於shallow model更強的建模能力的同時,Temam同時也結合硬體工藝遇到極限,單純通過工藝進步來獲得計算效率提升的方式已經行將走向盡頭的這個trend,提出了異構計算和應用定製加速器的思想。這其實也在近幾年來體系結構領域頂會的論文主題構成可見一斑[11]。

之後,在12年的ISCA上,Temam提出了第一個AI加速器的設計[9]。隨後就啟動了Temam與陳氏兄弟的合作項目,這個項目的名字也比較有趣,直接取了電腦的拼音,名之為Diannao項目[3]。Diannao項目的核心實際上就是提出了一系列定製的AI加速器的設計方案。包括第一個加速器Diannao[18],第二個加速器DaDiannao[19](Diannao的多片版本,通過多片設計,可以將較大的模型hold在on-chip memory上),第三個加速器ShiDiannao[20](將AI加速器與感測器直連,從而減少內存通訊的開銷),第四個加速器PuDiannao[21](將加速器從只支持特定神經網路擴寬到支持多種常規機器學習演算法)。PuDiannao也是Diannao項目的最後一個工作。

隨後,陳氏兄弟就提出了Cambricon指令集的思想,試圖在更為泛化的層面來完成AI加速器的設計。

在Cambricon之前,Diannao的四代加速器設計大體上走得還是比較純粹的專用邏輯加速的路子,加速邏輯的設計粒度比較粗,大約在神經網路的layer這個層級,這就限制了加速器的泛化性。網路結構稍有變化,機器學習演算法的邏輯有所調整,就可能導致加速器無法支持。而在Cambricon里,則試圖針對AI演算法,提取出更為細粒度,泛化性更強的building block,在更具原子性的building block上完成硬體結構設計,從而提升了加速器的通用性。

接下來我們就具體看一下這篇論文的細節內容。

本質上指令集的設計實際上是一個體系結構設計的工作,而體系結構設計這個領域從計算機誕生到現在,已經存在著大量的積累和經驗可供復用。比如指令集類型的選取(RISC[12] or CISC[13]),訪存體系的設計(Cache Hierarchy or Scratchpad Memory[2]),硬體流水線的設計等等。

從我個人的感覺,在這篇論文中所使用的building block並沒有原創性的東西,真正原創性的地方在於,作者跨越了多個domain,對於一個比較經典的問題(深層神經網路),使用已經經過驗證成熟的building block技術,給出了一個性能/功耗/開發效率 更高的解決方案。真正的核心貢獻在於問題的定義和提出,而並不是解決問題的技術細節。

所以,Cambricon的設計原則也比較簡潔,總結起來是幾點:

I. 採用基於load-store訪存模式的RISC指令集。具體指令的選取,根據workload的類型進行計算層面的抽象得出。對於深層神經網路來說,主要的計算和控制任務有幾種:

向量計算

矩陣計算

標量計算

分支跳轉

其中向量計算、矩陣計算、標量計算屬於標準的計算工作。形式上看起來與通用處理器沒有區別,主要的區別在於細節的支撐上。比如,對於神經網路計算任務中的高頻操作,就可以直接提供硬體指令集的支持,典型的例子就是應用於drop-out的Random-Vector指令,用於在一條指令內部為一個向量進行快速隨機初始化,以及應用於激活層的Vector-Expotential,用於在一條指令內部為一個向量進行快速的非線性變換(這裡稍微展開一些,針對神經網路的計算任務類型,在硬體層面,還可以為指數運算這樣的高耗時操作進行特定優化,比如通過高階Taylor展開來近似逼近指數運算,因為神經網路往往對於一定程度的數值誤差表現出較強的tolerance,這也是一系列模型壓縮技術得以有效運轉的關鍵基石)。

而分支跳轉的邏輯在神經網路計算任務里,並不像常規計算任務那麼複雜,所以指令集的設計上並不需要提供豐富的分支跳轉邏輯的支持,相應地,在結構設計環節,也可以減少在分支預測上花費的設計實現精力。

II. 不引入複雜的Cache體系和相關控制邏輯。這跟AI演算法的workload類型有強關聯,對於AI演算法來說,data locality並不強,cache對性能的影響不像常規計算任務那麼大,所以把用於實現cache hierarchy的控制邏輯精簡掉,對於提升晶元的計算功耗比會有很大的助益。

III. 使用Scratchpad Memory而不是寄存器堆來作為計算數據的主存儲。因為AI演算法的計算任務與常規的多媒體計算任務不同,指令所操作的數據長度往往是不定長的,所以應用於多媒體指令優化(SIMD)的寄存器堆就不如Scrathpad Memory靈活。

以上就是我總結的Cambricon的核心設計思想。

接下來可以來看一些具體的指令集示例。

Cambrian里所有的指令都是64-bit的長度,這也算是RISC設計思想的體現,可以有效簡化指令解碼器的負擔,有助於減少功耗和晶元面積。

指令集可以劃分為四大類,分別是計算類/邏輯類/控制類/數據存取類。

計算類指令主要是針對神經網路的常用計算邏輯提供了指令集的支持。比如矩陣與矩陣的相乘,矩陣與向量的相系,向量與向量的相乘,等等。這類指令的一個特點是,指令所操作數據的長度是不定長的,以靈活支持不同尺寸的矩陣和向量。

邏輯類指令主要是針對向量或矩陣數據,完成邏輯判斷操作。比如用於支持max-pooling的條件merge指令就可以對多組feature map,通過條件賦值,完成max-pooling的操作。關於這個操作,下面的圖片可能描述得會更形象一些:

控制類和數據存取類指令比較簡單,就是提供了分支跳轉以及數據的載入和寫入(相對於Scratchpad Memory),不再細說。

通過一段Cambricon的代碼示例,可能會有助於建立一些比較感性的理解:

上面這段代碼,基於Cambricon指令集,實現了一個全連接線性變換層+sigmoid激活層的邏輯。如果有熟悉MIPS指令集[14]的同學,看到上面這段代碼應該會感覺非常親切。

基於這套指令集,文章propose了一個加速器的結構設計原型:

如果有讀過量化體系結構教材(《Computer Architecture: A Quantitative Approach》)的同學,看到上面這張結構圖的第一反應恐怕會覺得這個結構圖比較簡單。從文章的介紹來看,這就是一個標準的MIPS指令集的流水線結構實現,由取指、解碼、發射、寄存器訪問、執行、寫回結果、提交七級流水組成,沒有支持亂序執行,是否支持多發射從論文中還看不出端倪。為了優化數據存取的信息,在Scratchpad Memory和矩陣/向量計算部件之間通過DMA[15]來加速數據傳輸的效率。在結構圖裡,引入了一個L1 Cache,主要是為標量數據的存取提供Cache支持,我的理解,標量數據的data locality會比matrix/vector數據要強,所以對這種場景提供cache支持有助於系統整體性能的保證,而考慮到標量數據上的操作在神經網路中的整體操作里佔比不高(見下圖),所以cache的控制邏輯也可以適當簡化,這是一個設計的trade-off。

指令集和結構設計是Cambricon最核心的部分,剩下的就是Benchmark的選取以及評測指標的內容。

Benchmark方面,文章選取了十類神經網路,分別由MLP(DNN) 、CNN、RNN、LSTM、Autoencoder、Sparse Autoencoder、Boltzmann Machine、RBM、SOM以及Hopfield Neural Network組成。

評估環境的搭建上,部分使用了硬體模擬工具(Cambricon和DaDiannao),部分使用了真實物理硬體(GPU/CPU),性能對比在cycle級對比完成。

評估指標上,主要關注了指令集表達效率(code density)、性能以及功耗這幾個方面。具體的實驗指標參考下面的圖表:

對於硬體設計背景出身的同學,可能還會關心基於Cambricon指令集的晶元layout,也就是每個功能模塊在最終晶元上佔據了多少比例的實地面積以及對應功耗,從下面這張圖來看,無論是從晶元面積佔比上還是從功耗佔比來看,矩陣部分都是大頭,這也比較符合我們對晶元上運行的workload的直覺理解。

最後再說說我的一些感受。從體系結構設計的角度來看,這篇文章並沒有提出多少突破性的東西,在文章中作者也專門提到了這一點(在文章的section IV.里講到並沒有使用到一些新興的技術,比如最近在最新款的Nvidia GPU里用到的3d stacking技術[16]),恰恰相反,從體系結構設計的角度來看,文章中提到的技術都可以說是一些「大路貨」的技術,無論是指令集的設計,還是微結構設計使用的大體上都是10年以前的技術方法。真正有創新性的東西,還是在於這篇文章找到了一種開創性解決問題的方式,橫跨了多個domain,使用傳統的經典技術,針對日益popular的神經網路應用,提出了一種在能耗比、靈活性、性能上獲得極佳trade-off的解決方案。這是一種框架性的貢獻。在這個框架下,實際上可以在每個局部模塊不斷細化,加入更為複雜,新興的技術。比如存儲部分為了獲取更好的訪存性能,就可以將新近的存儲技術引入。另外,在指令集設計上,可以加入對workload里更多類型邏輯的支持,比如受限的計算精度支持。在微體系結構上,是否可以結合特定的計算任務類型,在指令的調度部分做更多的考究,來更為高效地支持更為複雜的網路連接(比如Relay Back-propagation[17]這樣的多路連接的網路結構)。

這可能才是這篇文章能夠獲得ISCA 2016最高peer review score的原因。

References:

[1]. Shaoli Liu. Cambricon: An Instruction Set Architecture for Neural Networks", in Proceedings of the 43rd ACM/IEEE International Symposium on Computer Architecture. ISCA, 2016.

[2]. Scratchpad Memory. Scratchpad memory
[3]. A Brief Introduction to The Dianao Project. http://novel.ict.ac.cn/diannao/
[4]. Olivier Temam. The Rebirth of Neural Networks. https://hal.inria.fr/file/index/docid/535554/filename/ISCA2010web.pdf. ISCA, 2010.

[5]. Hugo Larochelle. An Empirical Evaluation of Deep Architectures on Problems with Many Factors of Variation. ICML, 2007.

[6]. ISCA 2016有哪些看點. ISCA 2016 有哪些看點? - 楊軍的回答
[7]. Research of Olivier Temam. http://pages.saclay.inria.fr/olivier.temam/homepage/research.html
[8]. Intel Labs. From a Few Cores to Many: A Tera-scale Computing Research Overview. Intel Whitepaper, 2006.

[9]. Olivier Temam. A Defect-Tolerant Accelerator for Emerging High-Performance Applications. ISCA, 2012.

[10]. Inria - Inventors for the digital world
[11]. ISCA 2016有哪些看點. ISCA 2016 有哪些看點? - 楊軍的回答
[12]. RISC. Reduced instruction set computing
[13]. CISC. Complex instruction set computing
[14]. MIPS Instruction Set. MIPS instruction set
[15]. Direct Memory Access. Direct memory access
[16]. Jishen Zhao, Guangyu Sun, Gabriel H. Loh, and Yuan Xie. Optimizing GPU energy efficiency with 3D die-stacking graphics memory and reconfigurable memory interface. ACM Transactions on Architecture and Code Optimization, 2013.

[17]. Li Shen. Relay Backpropagation for Effective Learning of Deep Convolutional Neural Networks. Arxiv, 2016.

[18]. Tianshi Chen. DianNao: A Small-Footprint High-Throughput Accelerator for Ubiquitous Machine-Learning. ASPLOS 2014.

[19]. Yunji Chen. DaDianNao: A Machine-Learning Supercomputer. Micro, 2014.

[20].Zidong Du. ShiDianNao: Shifting Vision Processing Closer to the Sensor. ISCA, 2015.

[21]. Daofu Liu. PuDianNao: A Polyvalent Machine Learning Accelerator. ASPLOS, 2015.


我比較喜歡這個工作,一直在想誰能做個NN的ISA才有用。之前那些 NN accelerator 水paper 都沒什麼用,基本功能太固定。整套 deep learning 的演算法還在不斷演進,明天的 network architecture 跟你昨天做的CNN就不一樣了,paper也就是發完就忘, doesn"t stand over time.

這個設計可以非常靈活地實現各種NN架構,把 CNN, RNN, LSTM, 等等等等都規整到最基本的幾種矩陣和向量操作指令,每個指令的進行的計算量又足夠廣,保持了domain-specific加速的優勢。 ISA總的來說比較像一個 super-SIMD, 編程起來不像 GPU 那樣那麼煩,不用想 parallel programming 的各種問題,一條指令算一整套。再一個,這個ISA沒有其他 old commercial 的歷史遺留問題,很簡單, fetch/decode 可以保持得高效,至少一開始可以這樣。

這個工作繼續下去有潛力把一整套系統做出來, chip tape-out, compiler/language support, multi-chip interconnect, 等等,但是繼續下去有很多 design consideration 需要討論:

1. Accelerator 和 CPU 的通信怎麼做,像 nvidia 對他的GPU有一整套通信機制,只是沒有開源。這些CPU和accelerator的通信模型是很煩的,需要的支持團隊也不小。他怎麼從 CPU instruct accelerator 去load數據,怎麼保持數據一致性,這些design很費腦子,退一步說,這一整套 API 的實現可不簡單。

2. 這個編譯器,還有programming model怎麼做,是準備在C/C++裡面加特定的pragma/library,還是讓python自動compile某一部分代碼到這個ISA,然後下面的runtime自己manage CPU-accelerator 通信。

3. 現在工業界搞的NN都巨大無比,你單個加速器就算是power8那麼大的,全是SIMD lanes也不夠。這個加速器怎麼支持distributed計算,怎麼和tensorflow/CNTK的framework融合。

我覺得把這套東西做成 IP 模式比較好,不然很容易搞成 nvidia 的獨立顯卡 + CUDA 編程模式,物理尺寸可能沒那麼大,但是 硬體集成,軟體編程可能會變得很像,這樣不可能有市場。基於CUDA的一整套library很強大了,nVidia顯卡的設計和製造又怎麼厲害,新生的project從產品成熟度上面拼不過他們,用戶沒有足夠的動力專門買一套還不夠成熟的硬體產品,如果編程模式陌生的話大家就更加不可能用了。
再一個,所有ISA的問題都是,一開始大家都覺得可以非常簡潔,但是慢慢地都開始往上面加一堆東西。。。這個問題可以參考nVidia的PTX virtual ISA設計,說到底還是編譯器,和programming model的問題。

就像 @謝丹 說的,這個基於ISA的. 略靈活的加速器,想法不難,我特么一看到一堆 NN accelerator 都能立馬想到這東西,沒什麼太大 intellectual merit. 成功define了這個問題,並且把ISA設計出來是好的。關鍵的,有價值的地方,在 software support.


跟CPU比毫無意義,要跟google 的TPU 對比才有意義 。畢竟這是專用晶元。

我知道的國內就有近10家在做,而且目標是商業應用。

這個做的人很多。65nm工藝明顯落後工業界28nm至少兩代工藝。

1,ASIC 5-10倍 DSP/GPU , 10-100倍CPU,這是正常值,拿ASIC對比CPU無意義。
2,ASIC需要對應的底層,需要配套的開發環境。
所以你可以對比google 的TPU ,如果你想直接用tensorflow 做為開發環境。
你可以對比GPU。如果你用nvda的庫做開發環境。
3,所以,這個比晶元更高一級的成本在開發環境上面,免費的、庫齊全的開發環境
需要比晶元至少10-100倍的投入。Dadiannao沒有證明自己有這個能力。

所以,這個要對比,類似當年的wintel ,目前只有兩條路:
1,你採用google 和nvda的環境,你的設計和TPU/GPU 進行對比。
2,你的投資額與google,nvda 進行對比。


做個玩具灌個水不難(雖然也不容易)。想當年想做通信用處理器的有多少?現在的很多架構上還能看到當年的影子。問題是,到最後誰的能夠實用了?
像華為什麼的還是自己搭的啊。
本質上,這不是個學術問題,這是個用現有技術手段可以完成的工程問題。
再者,這是個軟硬體一體設計的問題。只有內生了足夠強的需求,才有完成這個工作的動力和能力。
所以,我更看好有實際需求的大公司而不是學校的實驗室來解決這個問題。


這個晶元解決的是從無到有的問題


大概一年前看過dadiannao那文章。當時看完文章後,一拍大腿,我怎麼沒想到裝這個逼呢。

結果是不錯的,配合現在CNN,DNN大熱,引用數一直在往上刷。

計算上特點就是實現了一個64*64,64輸入64輸出,的全連接網路。實現是用了16個cell,每個cell是16×16。(64×64=16×16×16)。每個cell的ASIC計算沒有什麼新奇,就是一排乘法,一排加法,一排插值。
「創新」其實在於內存的實現上:本來這種東西最大瓶頸在於那64×64的weight的讀取。這裡用的解決辦法是本地化在每個晶元上。用的是eDRAM,比DRAM省電(因為本地化,所以addressing功耗降低很多。)比SRAM更省電(但是慢些)。
話了很多時間在benchmark,在layout,在討論讀取。當然這一切,都不是rocket-science。

×其實我不是完全理解文章中那些64×64的weight不是一樣需要傳到off-chip的中央DRAM上來?怎麼降低這個功耗?把這64×64都放在同一個page裡面?忘了文章裡面在experiment上是怎麼描述這塊的功耗的。


有人要和CPU比?當然不公平,也沒有太大意義。但是人家在paper裡面吹吹還是放過別人吧。
和GPU比?我覺得最大區別是GPU的版本很少memory本地化。本地化distributed localization(比如dadiannao)的缺陷在於基本固定死了網路的拓撲(64×64),這點上來說確實通用性損失很大。文章肯定可以argue說大網路,比如200*200:1)它可以復用很多個64*64,但是這樣效率就會降到接近於GPU了,因為localization的gain就變得很小了。2)它可以argue說那你就需要重新tape-out一個200*200的chip。對於2),其實我一直看好用FPGA而不是ASIC。
所以它不敢隨便拿個github上的 應用來跑。都是針對它文章優化(挑選)過的。

我覺得未來來說。大型應用還是會需要這種DaDianNao的。比如他們合作的法國inria組老大就剛去了Google。
不過對於一般應用,GPU應該還會是主流。

不行,我也要往上灌水。明天就和老闆建議招個碩士做做這個。我連abstract都想好了。


只想說compiler才是王!君不見IMEC那麼多效能驚人的cgra最後還不是沒有推開?
對於工業應用,通用不是好事,市場都是極度細分的。陳的工作更多是在isa層面分析了面相神經網路應用定製指令集在各個緯度的design space,可以為後來人提供了有價值的設計參考和指導。
另外隨著工藝的進步,fpga能耗現在已經很低了,加上hls和opencl漸漸普及和成熟,大大降低了入門門檻,time2market的優勢,在視覺領域這些領域定製處理器不一定能拼得過。被人詬病的成本的問題,就交給intel和xilinx吧。


Diannaoyu和Diannao當然是非常重要的成就,但為什麼總有人要拿ASIC和通用CPU比效能。。。


計算機,手機晶元的時代要過去了,將來是 AI晶元,Robot晶元了。 神經網路晶元將為Robot晶元,AI晶元作為基礎,AI晶元也為量子計算機晶元作為基礎也為智能家居中心作為基礎,智能城市中心作為基礎。比如無人機中心塔,Robot集結中心,自動駕駛車,無人車中心,工業4.0的數據中心晶元,已經涉及到更多更廣的各行各業的領域,醫院,學校,工廠,警察,物流,電商,交通,建築,工程,生物,醫藥,研究院,等等。一切需要大量數據的位置都依賴於持續有更快處理能力,更小體積,更便宜的晶元。

不過這些都是物理晶元,生物晶元還在科幻世界裡面呢。biocpu, biokernel


Nividia 的帕斯卡,余凱的地平線,再加上寒武紀。問題這個市場到底有多大?


目前看獨當一面的應用範圍比較窄,賣IP是個不錯的主意。


這麼說我們也有黑科技處理器了?


ASIC太限制應用範圍了,看怎麼商業化了。


此等處理器,大招類型,絕對不能出售轉讓!


推薦閱讀:

word2vec算出的詞向量怎麼衡量好壞?
梯度下降法是萬能的模型訓練演算法嗎?
人腦有海量的神經元(參數),那麼人腦有沒有「過擬合」行為?

TAG:微電子 | 晶元(集成電路) | 神經網路 | 處理器 | 寒武紀(神經網路處理器) |