軟體吞噬硬體的 AI 時代,晶片跟不上演算法的進化要怎麼辦?
作者 品玩 | 發布日期 2021 年 02 月 23 日 8:00 |
身為 AI 時代的幕後英雄,晶片業正經歷漸進持續的變化。
2008 年之後,深度學習演算法逐漸興起,各種神經網絡滲透到手機、App 和物聯網。同時摩爾定律卻逐漸放緩。摩爾定律雖然叫定律,但不是物理定律或自然定律,而是半導體業發展的觀察或預測,內容為:單晶片整合度(積體電路中晶體管的密度)每 2 年(也有 18 個月之說)翻倍,帶來性能每 2 年提高 1 倍。
保證摩爾定律的前提,是晶片製程進步。經常能在新聞看到的 28 奈米、14 奈米、7 奈米、5 奈米,指的就是製程,數字越小製程越先進。隨著製程的演進,特別進入10 奈米後,逐漸逼近物理極限,難度越發增加,晶片全流程設計成本大幅增加,每代較上一代至少增加 30%~50%。
這就導致 AI 對算力需求的增長速度,遠超過通用處理器算力的增長速度。據 OpenAI 測算,從 2012 年開始,全球 AI 所用的演算量呈現等比級數增長,平均每 3.4 個月便會翻 1 倍,通用處理器算力每 18 個月至 2 年才翻 1 倍。
當通用處理器算力跟不上 AI 演算法發展,針對 AI 演算的專用處理器便誕生了,也就是常說的「AI 晶片」。目前 AI 晶片的技術內涵豐富,從架構創新到先進封裝,再到模擬大腦,都影響 AI 晶片走向。這些變化的背後,都有共同主題:以更低功耗,產生更高性能。
更靈活
2017 年圖靈獎頒給電腦架構兩位先驅 David Petterson 和 John Hennessy。2018 年圖靈獎演講時,他們聚焦於架構創新主題,指出演算體系結構正迎來新的黃金 10 年。正如他們所判斷,AI 晶片不斷出現新架構,比如英國 Graphcore 的 IPU──迥異於 CPU 和 GPU 的 AI 專用智慧處理器,已逐漸被業界認可,並 Graphcore 也獲得微軟和三星的戰略投資支援。
名為 CGRA 的架構在學界和工業界正受到越來越多關注。CGRA 全稱 Coarse Grained Reconfigurable Array(粗顆粒可重構陣列),是「可重構計算」理念的落地產物。
據《可重構計算:軟體可定義的計算引擎》一文介紹,理念最早出現在 1960 年代,由加州大學洛杉磯分校的 Estrin 提出。由於太過超前時代,直到 40 年後才獲得系統性研究。加州大學柏克萊分校的 DeHon 等將可重構計算定義為具以下特徵的體系結構:製造後晶片功能仍可客製,形成加速特定任務的硬體功能;演算功能的實現,主要依靠任務到晶片的空間映射。
簡言之,可重構晶片強調靈活性,製造後仍可透過程式語言調整,適應新演算法。形成高度對比的是 ASIC(application-specific integrated circuit,專用積體電路)。ASIC 晶片雖然性能高,卻缺乏靈活性,往往是針對單一應用或演算法設計,難以相容新演算法。
2017 年,美國國防部高級研究計劃局(Defence Advanced Research Projects Agency,DARPA)提出電子產業復興計劃(Electronics Resurgence Initiative,ERI),任務之一就是「軟體定義晶片」,打造接近 ASIC 性能、同時不犧牲靈活性。
照重構時的顆粒分別,可重構晶片可分為 CGRA 和 FPGA(field-programmable gate array,現場可程式語言邏輯門陣列)。FPGA 在業界有一定規模應用,如微軟將 FPGA 晶片帶入大型資料中心,用於加速 Bing 搜索引擎,驗證 FPGA 靈活性和演算法可更新性。但 FPGA 有局限性,不僅性能和 ASIC 有較大差距,且重程式語言門檻比較高。
CGRA 由於實現原理差異,比 FPGA 能做到更底層程式的重新設計,面積效率、能量效率和重構時間都更有優勢。可說 CGRA 同時整合通用處理器的靈活性和 ASIC 的高性能。
隨著 AI 演算逐漸從雲端下放到邊緣端和 IoT 設備,不僅演算法多樣性日益增強,晶片更零碎化,且保證低功耗的同時,也要求高性能。在這種場景下,高能效高靈活性的 CGRA 大有用武之地。
由於結構不統一、程式語言和編譯工具不成熟、易用性不夠友善,CGRA 未被業界廣泛使用,但已可看到一些嘗試。早在 2016 年,英特爾便將 CGRA 納入 Xeon 處理器。三星也曾嘗試將 CGRA 整合到 8K 電視和 Exynos 晶片。
中國清微智慧 2019 年 6 月量產全球首款 CGRA 語音晶片 TX210,同年 9 月又發表全球首款 CGRA 多模態晶片 TX510。這家公司脫胎於清華大學魏少軍教授起頭的可重構計算研究團隊,從 2006 年起就進行相關研究。據芯東西 2020 年 11 月報導,語音晶片 TX210 已出貨數百萬顆,多模組晶片 TX510 在 11 月也出貨 10 萬顆以上,主要客戶為智慧門鎖、安防和臉部支付相關廠商。
先進封裝上位
如開篇提到,由於製程逼近物理極限,摩爾定律逐漸放緩。同時 AI 演算法的進步,對算力需求增長迅猛,逼迫晶片業在先進製程之外探索新方向,之一便是先進封裝。
「在大數據和認知計算時代,先進封裝技術正在發揮比以往更大的作用。AI 發展對高效能、高吞吐量互連的需求,正透過先進封裝技術加速發展來滿足。 」世界第三大晶圓代工廠格羅方德平台首席技術專家 John Pellerin 聲明表示。
先進封裝是相對於傳統封裝的技術。封裝是晶片製造的最後一步:將製作好的晶片器件放入外殼,並與外界器件相連。傳統封裝的封裝效率低,有很大改良空間,而先進封裝技術致力提高整合密度。
先進封裝有很多技術分支,其中 Chiplet(小晶片/芯粒)是最近 2 年的大熱門。所謂「小晶片」,是相對傳統晶片製造方法而言。傳統晶片製造方法,是在同一塊矽晶片上,用同一種製程打造晶片。Chiplet 是將一塊完整晶片的複雜功能分解,儲存、計算和訊號處理等功能模組化成裸晶片(Die)。這些裸晶片可用不同製程製造,甚至可是不同公司提供。透過連接介面相接後,就形成一個 Chiplet 晶片網路。
據壁仞科技研究院唐杉分析,Chiplet 歷史更久且更準確的技術詞彙應該是異構整合(Heterogeneous Integration)。總體來說,此技術趨勢較清晰明確,且第一階段 Chiplet 形態技術較成熟,除了成本較高,很多高端晶片已經在用。
如 HBM 儲存器成為 Chiplet 技術早期成功應用的典型代表。AMD 在 Zen2 架構晶片使用 Chiplet 思路,CPU 用的是 7 奈米製程,I/O 使用 14 奈米製程,與完全由 7 奈米打造的晶片相比成本約低 50%。英特爾也推出基於 Chiplet 技術的 Agilex FPGA 系列產品。
不過,Chiplet 技術仍面臨諸多挑戰,最重要之一是互連介面標準。互連介面重要嗎?如果是在大公司內部,比如英特爾或 AMD,有專用協議和封閉系統,在不同裸晶片間連接問題不大。但不同公司和系統互連,同時保證高頻寬、低延遲和每比特低功耗,互連介面就非常重要了。
2017 年,DARPA 推出 CHIPS 戰略計劃(通用異構整合和 IP 重用戰略),試圖打造開放連接協議。但 DARPA 的缺點是,側重國防相關計畫,晶片數量不大,與真正商用場景有差距。因此一些晶片業公司成立組織「ODSA(開放領域特定架構)工作組」,透過制定開放的互連介面,為 Chiplet 的發展掃清障礙。
另闢蹊徑
除了在現有框架內做架構和製造創新,還有研究人員試圖跳出電腦現行的范紐曼型架構,開發真正模擬人腦的計算模式。
范紐曼架構,數據計算和儲存分開進行。RAM 存取速度往往嚴重落後處理器的計算速度,造成「記憶體牆」問題。且傳統電腦需要透過總線,連續在處理器和儲存器之間更新,導致晶片大部分功耗都消耗於讀寫數據,不是算術邏輯單元,又衍生出「功耗牆」問題。人腦則沒有「記憶體牆」和「功耗牆」問題,處理訊息和儲存一體,計算和記憶可同時進行。
另一方面,推動 AI 發展的深度神經網路,雖然名稱有「神經網路」四字,但實際上跟人腦神經網路運作機制相差甚遠。1,000 億個神經元,透過 100 萬億個神經突觸連接,使人腦能以非常低功耗(約 20 瓦)同步記憶、演算、推理和計算。相比之下,目前的深度神經網路,不僅需大規模資料訓練,運行時還要消耗極大能量。
因此如何讓 AI 像人腦一樣工作,一直是學界和業界積極探索的課題。1980 年代後期,加州理工學院教授卡弗·米德(Carver Mead)提出神經形態工程學的概念。經過多年發展,業界和學界對神經形態晶片的摸索逐漸成形。
軟體方面,稱為第三代人工神經網路的「脈衝神經網路」(Spike Neural Network,SNN)應運而生。這種網路以脈衝信號為載體,更接近人腦的運作方式。硬體方面,大型機構和公司研發相應的脈衝神經網路處理器。
早在 2008 年,DARPA 就發起計畫──神經形態自適應塑膠可擴展電子系統(Systems of Neuromorphic Adaptive Plastic Scalable Electronics,簡稱 SyNAPSE,正好是「突觸」之意),希望開發出低功耗的電子神經形態電腦。
IBM Research 成為 SyNAPSE 計畫的合作方之一。2014 年發表論文展示最新成果──TrueNorth。這個類腦計算晶片擁有 100 萬個神經元,能以每秒 30 幀的速度輸入 400×240pixel 的影片,功耗僅 63 毫瓦,比范紐曼架構電腦有質的飛躍。
英特爾 2017 年展示名為 Loihi 的神經形態晶片,包含超過 20 億個晶體管、13 萬個人工神經元和 1.3 億個突觸,比一般訓練系統所需的通用計算效率高 1 千倍。2020 年 3 月,研究人員甚至在 Loihi 做到嗅覺辨識。這成果可應用於診斷疾病、檢測武器和爆炸物及立即發現麻醉劑、煙霧和一氧化碳氣味等場景。
中國清華大學類腦計算研究中心的施路平教授團隊,開發針對人工通用智慧的「天機」晶片,同時支持脈衝神經網路和深度神經網路。2019 年 8 月 1 日,天機成為中國第一款登上《Nature》雜誌封面的晶片。
儘管已有零星研究成果,但總體來說,脈衝神經網路和處理器仍是研究領域的方向之一,沒有在業界大規模應用,主要是因為基礎演算法還沒有關鍵性突破,達不到業界標準,且成本較高。
附圖:▲ 不同製程節點的晶片設計製造成本。(Source:ICBank)
▲ 可重構計算架構與現有主流計算架構在能量效率和靈活性對比。(Source:中國科學)
▲ 異構整合成示意動畫。(Source:IC 智庫)
▲ 通用處理器的典型操作耗能。(Source:中國科學)
資料來源:https://technews.tw/2021/02/23/what-to-do-if-the-chip-cannot-keep-up-with-the-evolution-of-the-algorithm/?fbclid=IwAR0Z-nVQb96jnhAFWuGGXNyUMt2sdgmyum8VVp8eD_aDOYrn2qCr7nxxn6I
單晶片程式語言 在 Johntool-工具王阿璋 Facebook 的最佳貼文
【#工程師之路】資工系vs資管系 到底哪裡不一樣?
常常有高中生用臉書問我「資管系、資工系到底有甚麼不同?」
今天,就要來帶大家一起解密啦✊!
✔資訊工程學系
資工系學的就是硬體、韌體、軟體、網路,
讀資工= 資管 - 管理 + 硬體
資工系通常不學管理學、經濟學、會計學、生產管理、人事管理、財務管理。
而資工系會學習的課程,來來,就讓我用親身經歷告訴你吧。
軟體課程:程式設計、資料結構、演算法、視窗程式、手機程式📱、人工智慧、資料庫、軟體工程。
韌體課程:嵌入式系統、系統程式、編譯器、作業系統、單晶片微處理器。
硬體課程:數位邏輯、計算機結構、電子電路、 FPGA。
網路課程:網路程式設計💻、 計算機網路概論 、無線網路等等。
✔資訊管理學系
而資管比資工多的就是關於「企業運作」的知識,資管系就是聚焦企業上,再加上程式在企業中的運用,包括管理學、經濟學、會計學、生產管理、人事管理、財務管理、資訊管理、程式設計、資料庫、 會計資訊系統、管理資訊系統、決策資源系統、 企業資源規劃 ERP 、供應鏈管理、電子商務等。
✔到底該怎麼選適合的系所?
最後,總結一下到底該怎麼選適合的系所?
我會很建議高中生們嘗試去寫程式,可以嘗試最根本的 C 語言,也可以嘗試近期興盛的 Python。
有些高中會教,有些不會,但是這個卻可以讓自己明確知道自己適不適合走資工。
如果覺得程式邏輯很有趣,就推薦選資工,將程式語言學個透徹。
如果對程式稍微有興趣,又想要學一些管理的知識,就建議去讀資管。
✔不論是讀資工、還是資管、甚至是企管系,
其實只要有心學習程式💓,都有機會可以當上工程師唷🙆♂!
想知道更多?
【歡迎追蹤Johntool-工具王阿璋 @johntooltw ↓↓↓】
facebook► https://www.facebook.com/JohntoolTW
instagram► https://www.instagram.com/johntooltw/
收到更多 #工程師之路 #不務正業工程師 系列👍!
#工程師 #軟體工程師 #Coding #韌體 #硬體 #網路 #資工 #資工系 #企管 #企管系 #資管 #資管系 #理工科系 #選系 #大學選系 #網站設計 #程式設計 #程式 #程式語言 #分享 #share #Johntool #工具王阿璋
單晶片程式語言 在 Johntool-工具王阿璋 Facebook 的最佳解答
【#工程師之路】電機系vs資工系 到底哪裡不一樣?
這幾天被敲碗詢問的問題,
就是「電機系和資工系到底哪裡不一樣?」
欸對,老實說,其實我高中時也不是很清楚,
讀完4年電資系(電機資訊學士班),
電機系和資工系的課也幾乎修過一遍,
就讓我來跟大家說個明白吧。
就產業而言,電機與資工就像是相依共存的雙子星(binary star),缺一不可。
事實上,許多高科技產業最後決勝的關鍵:都在於資訊科技。
聯發科的董事長就曾表示:
「台灣 IC 設計業最大的問題是系統整合能力不足,
成為未來發展系統單晶片(SOC)的弱點」
系統整合的重要元素就是資訊科技。
#電機系
1. 電機範疇偏硬體設施,主要有IC晶片、大型積體電路、電路板等等。
2. 台灣科技業多以硬體為主,電機系主要培養的就是硬體人才,電機範疇廣,所以畢業後工作的確相對好找。
3. 電機系的出路主要以竹科為主,像是台積電、聯發科等等年薪百萬的大公司。
#資工系
1. 資工範疇偏軟體設施,不管未來的電腦介面如何變化,程式的基本架構還是一樣,只要程式邏輯觀念夠好,學習任何程式語言都很好上手。
2. 硬體設施不斷改變,大家搶著從 #機械系、#電機系 挖人才。
而軟體的設計與應用卻差異不大,從最初的組合語言,LIPS,ADA演變到第一個物件導向程式設計FORTUNE,到現在熱門的C++ 、跨平台APP常用的JAVA,雖然程式語言改變很多,但基本的程式基本上都大同小異。
而當被問到讀電機、還是讀資工的 #薪水 比較好,
可能就得看每個人研究的領域與能力了。
【訂閱Johntool-工具王阿璋instagram ↓↓↓】
► https://www.instagram.com/johntooltw/
收到更多 #工程師之路 #不務正業工程師 系列!
#不務正業工程師 #工程師 #自媒體 #軟體工程師 #Coding
#資工 #資工系 #電機 #電機系 #電資系 #機械系 #理工科系 #選系 #大學選系
#C++ #跨平台APP #JAVA
#分享 #心路歷程