終端AI晶元硬體相似,軟體才是成功的關鍵?
AI的發展正在從雲端走向終端,未來無論是智能手機、汽車、無人機、機器人都將增加更多的AI功能。市場的需求吸引了越來越多AI晶元公司的加入,在終端AI晶元公司不斷推出更高算力晶元的時候,可以發現他們的硬體各有長處但很相似,這是否意味著軟體才是終端AI晶元獲勝的關鍵?
終端AI晶元的硬體比拼
根據J.P. Morgan的預測,2018年到2022年,全球半導體市場的複合年均增長率(CAGR)將為5-6%,而同期AI半導體市場的複合年均增長率將高達59%。這其中的增長應該很大一部分源於終端設備,包括手機、自動駕駛汽車、無人機、機器人等智能設備對低延遲、低功耗、低成本、高可靠性、高安全性人工智慧的需求。因此,來自視覺、語音等應用促使等越來越多的公司開始設計通用的AI晶元,並進一步促使半導體IP提供商推出AI處理器IP。
以CEVA今年推出的用於前端設備深度學習的AI處理器IP NeuPro為例,該處理器由NeuPro引擎和NeuPro VPU組成。NeuPro引擎包括神經網路層的硬體實現,其中包括卷積、全連通、池化和激活。NeuPro VPU是可編程矢量DSP,用於處理CDNN軟體,同時為AI負載的新進展提供基於軟體的支持。
據悉,NeuPro支持8位和16位神經網路,MAC單元在運行時的利用率達90%以上,整體處理器的設計大幅降低了DDR帶寬,功耗得以改善。另外,NeuPro還可以與CEVA-XM4或CEVA-XM6視覺平台相結合,使圖像處理、計算機視覺和神經網路的處理能有靈活的選擇。
當然,為了滿足不用設備對AI性能的需求,NeuPro系列處理器可以提供2TOPS到12.5TOPS的性能,具體分為四款AI處理器,包含512個MAC單元的NP500面向物聯網、可穿戴設備和相機;包含1024個MAC單元的NP1000面向中檔智能手機、ADAS、工業應用和AR / VR頭戴設備;包含2048個MAC單元的NP2000瞄準高端智能手機、監控、機器人和無人機;包含4096個MAC單元的NP4000用於企業監控和自動駕駛的高性能邊緣處理。
雷鋒網了解到,NeuPro支持CNN、RNN、DNN、XNN,多網路和模型的支持不僅會增大處理器的面積,功耗也會相應的增加。為了降低功耗,CEVA營銷副總裁Moshe Sheier表示:「數據的載入和存儲在AI處理器中能量的消耗會佔比較大的比重,因此NeuPro會把連續的卷積層進行壓縮和處理,將32位浮點量化到16位、8位甚至更低的位數,減少數據的載入和存儲。另外,NeuPro Engine和VPU單元之間的數據交換也可以通過直連通道,不需要通過SoC匯流排做交換,大大減少中間數據的載入。」
為了保持硬體的靈活性,Moshe Sheier告訴雷鋒網:「視覺應用在不斷的發展,但無論是新出現的層還是模型,都可以放到我們的Vision DSP(VPU)上處理,既能保持DSP很強的功耗和性能優勢,也能讓NeuPro不斷適應新的變化,這也是我們AI方案的特點。」
Moshe Sheier同時表示,AI還處於一個早期的階段,現在的情況是各家的AI處理器IP在SoC中所佔的面積都不小,未來將不斷的演進,十年後回過頭看肯定會覺得現在的AI處理器很龐大。在AI處理器的設計上,雖然每家的產品會各有特色,但又很相似,因為大家都在堆MAC單元,用更多的MAC單元實現更高的硬體指標,但在同樣的工藝下,面積和功耗都很接近。這時我們還需要思考,MAC單元的成本、利用率以及最終的功耗和面積。因此,如何延長產品的周期更好地適應OEM廠商不斷變化的需求非常關鍵,這時軟體的作用尤為明顯。
軟體才是AI處理器成功的關鍵?
據介紹,與NeuPro系列處理器配合的是CDNN神經網路軟體框架,它的主要作用是把用戶使用不同框架訓練好的神經網路進行量化、壓縮等處理,然後自動地部署到底層的硬體。Moshe Sheier強調,CDNN所能實現的自動化是基於CEVA對應用和協議的深入了解和分析,加上長期的積累判斷哪些工作適合什麼樣的硬體,另外,CEVA不同的硬體平台軟體使用的都是同一套框架。
可以看到,CEVA也在不斷完善CDNN,最近發布的最新CDNN版本具有開放式神經網路交換(ONNX,由Facebook、微軟和AWS創建的開放格式,用於實現AI社群內的互操作性和可移植性,可讓開發人員針對項目使用合適的工具組合)支持。CEVA副總裁兼視覺業務部門總經理Ilan Yona 表示:「CEVA為實現開放、可互操作的AI生態系統,人工智慧應用程序開發人員能夠充分利用生態系統中各種不同深度學習框架,考慮其功能和易用性,為所需特定應用選擇最合適的深度學習框架。通過為CDNN編譯器技術添加ONNX支持,我們為CEVA-XM和NeuPro的客戶及生態系統合作夥伴提供了更廣泛的功能,用於培訓和豐富其神經網路應用。」
Moshe Sheier表示:「如果看語音處理,無論是喚醒還是關鍵字識別都已經從傳統的演算法全面轉變到神經網路處理,這種演算法的更新和軟體的更新反過來會對硬體提出更高的要求,也就是說演算法和平台會不斷的更新。因此在AI處理器演進過程當中,我們應該適當的多用軟體,少用固定的硬體,盡量延長產品生命周期。AI處理器需要考慮到盈利的問題,一代產品的壽命如果過短的,對公司本身和產業的發展其實是不利的。」
還需指出的是,硬體和軟體的發展是相互影響。Moshe Sheier舉例說:「如果用今年的AI演算法和2016年的AI演算法比較,會發現今年的AI的演算法精度可能比2016年略微的提升,但它的網路的大小和帶寬有大幅度下降。因此在硬體功耗和面積達到極限的情況下,演算法只有進一步做簡化才能向前發展,這也有助於功耗的降低。」
雷鋒網小結
終端產品的AI需求促使不少公司進入AI領域,而AI晶元公司的需求又推動半導體IP公司推出AI處理器IP。可以看到,在演算法和模型還不夠穩定的時候,提供通用IP和平台的公司並沒有著急推出產品,而是等待演算法和模型穩定之後選擇合適的時機和領域進入市場。
異構架構是AI晶元更好的選擇,終端AI晶元相似的的地方在於增加MAC單元提升性能,同時為降低功耗也為減少數據的載入和存儲使用了專門的技術。更為關鍵的是,為保持對未來演算法和模型的適應性,除了集成具有可編程性能的硬體,軟體更高的可配置性成為AI處理器中保持競爭力,延長產品周期非常關鍵的部分。
※傳華為推薦微軟在數據中心使用其AI晶元,自研GPU終於要面市?
※沈向洋宣布:微軟將在今年成立亞洲研究院上海分部
TAG:雷鋒網 |