丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預(yù)覽,將在時失效
業(yè)界 正文
發(fā)私信給王剛
發(fā)送

0

OURS譚章熹:開源RISC-V指令架構(gòu)與AI芯片 | CCF-GAIR 2018

導語:摩爾定律失效,Amdahl定律依然存在。

雷鋒網(wǎng)按:2018 全球人工智能與機器人峰會(CCF-GAIR)在深圳召開,峰會由中國計算機學會(CCF)主辦,雷鋒網(wǎng)、香港中文大學(深圳)承辦,得到了寶安區(qū)政府的大力指導,是國內(nèi)人工智能和機器人學術(shù)界、工業(yè)界及投資界三大領(lǐng)域的頂級交流盛會,旨在打造國內(nèi)人工智能領(lǐng)域最具實力的跨界交流合作平臺。在7月1日,峰會的AI芯片專場上,AI芯片領(lǐng)域的專家和業(yè)內(nèi)人士們齊聚一堂,對AI芯片的未來展開了深入的探討。

OURS譚章熹:開源RISC-V指令架構(gòu)與AI芯片 | CCF-GAIR 2018

OURS創(chuàng)始人兼CEO譚章熹

其中,OURS創(chuàng)始人兼CEO譚章熹在會上做了《開源RISC-V指令架構(gòu)與AI芯片》的發(fā)言,他指出,RISC-V作為軟硬件接口的指令架構(gòu),對AI芯片提供了非常重要的基礎(chǔ)。OURS作為RISC-V非常直接的參與者,將很快推出開源AI芯片。這家位于美國硅谷的AI芯片初創(chuàng)公司未來或?qū)⒊蔀锳I芯片領(lǐng)域極大的變量。以下是譚章熹在CCF-GAIR 2018上的演講全文,雷鋒網(wǎng)在不改變原意的基礎(chǔ)上進行了編輯:

AI芯片發(fā)展三大歷史階段回顧

AI芯片是最近非常熱的話題,AI芯片并不能說是非常新的課題。在歷史發(fā)展來講,至少發(fā)展了三代。接下來我們回顧AI芯片發(fā)展的三大歷史階段。

·第一,1950-1960年代,Rosenblatt最早發(fā)現(xiàn)神經(jīng)元Perceptron,他發(fā)明這個東西以后做了一個模擬計算的計算機,這是第一代模擬計算機Mark 1 Perceptron,可調(diào)電位器模擬可編程參數(shù)。XOR很難實現(xiàn),一段時間后變得不太流行。

·第二,1980年代末到1990年代初,算法發(fā)現(xiàn)關(guān)于Back Propagation,對模型進行訓練,那時候很多人做語等方面的AI研究,網(wǎng)絡(luò)模型基本是2-3層。由于出現(xiàn)Back Propagation,所以出現(xiàn)了很大的計算量需求(用于模型訓練),當時的計算機并不是非常強大。那時候很多人說自己做計算機用于加速AI訓練。當時主流AI是Symbolic AI,同時使用Lisp/Prolog編程。網(wǎng)絡(luò)大小是2-3層左右,比較有代表性的是1985年推出的Connection Machine,每一代有不同的改進。主要應(yīng)用是做訓練的,包括Symbolic AI。

·第三,2010年開始的深度學習,網(wǎng)絡(luò)大概是3至3層以上,摩爾定律遇到瓶頸,難以通過工藝實現(xiàn)性能的提升。大家突然對定制化AI芯片有了非常大的興趣。代表計算機還不太清晰,這里省略五六十家AI創(chuàng)業(yè)公司。

OURS譚章熹:開源RISC-V指令架構(gòu)與AI芯片 | CCF-GAIR 2018

摩爾定律失效  Amdahl定律依然存在

隨著三代AI芯片發(fā)展下來,每一代的發(fā)展都能學到一些東西,這是我個人總結(jié)出來的幾點:

·第一,AI的計算很重要,但不要忽視緩存、內(nèi)存系統(tǒng)架構(gòu),你需要有足夠的容量。容量大了以后,必須對動態(tài)內(nèi)存進行緩存。如何設(shè)計片上內(nèi)存,用分布式設(shè)計的效率并不是很高,就像我們蓋房子似的,內(nèi)存架構(gòu)設(shè)計有很多,并不是只適用于一種軟件算法。

·第二,軟件非常重要,沒有軟件就沒有AI芯片。芯片先完成,但不停的更新軟件算法。99%的工作是軟件、開發(fā)工具SDK,我們在不斷的做訓練。軟件隨著算法發(fā)展的速度,每6個月會出現(xiàn)新算法。當你做芯片時,要考慮到硬件是否適用未來6個月的算法,這一點非常重要。這么多年下來,大家對算法的實現(xiàn)通常情況是用手工方式,效率非常高,高于自動生成的100倍,大概是兩個數(shù)量級的效率。壞處是手工做,對算法的要求非常高?,F(xiàn)在你看到Tensorflow,就是為了提高編程效率, 但其核心實現(xiàn)相當復雜。

·第三, ALU的性能通常描述是多少TOPS,例如每秒可以做多少乘法。實際AI芯片是隨著數(shù)據(jù)的存儲和數(shù)據(jù)流動,ALU單元能夠變成百分百能工作的時候并不高,memory的存儲也是同樣的道理,只有小部分緩存是活動的。很多時候說如何提高ALU設(shè)計利用率和緩存架構(gòu)問題。

·第四,第三代AI芯片出現(xiàn),摩爾定律基本走到盡頭,我們遇到物理極限,新工藝越來越昂貴。相反Amdahl定律,(它談到的是串行和并行關(guān)系):雖然很多部分可以做并行化,但總是有很大一部分的程序還是串行執(zhí)行的,通常串行部分之星效率決定了系統(tǒng)性能。雖然現(xiàn)在摩爾定律失效了,Amdahl定律依然存在。

現(xiàn)代AI芯片架構(gòu),通常會選用CPU中央處理器+AI加速器的方式,通常移動方案我們會選用ARM處理器,服務(wù)器用得最多的是Intel。接口是通用的,隨著CPU的定義,AXI是ARM的接口標準,PCle是英特爾本身控制的。

案例:Google TPU,這是第二代TPU,把這個東西掛PCle上,作為加速器的方式存在。很多人認為Google靠著圍棋TPU戰(zhàn)勝人類是一個巨大的創(chuàng)新。從計算機系統(tǒng)架構(gòu)角度來講,這個想法并不是Google最先提出的。1992年時,西門子發(fā)明Machine Synapse-1,這是可以花錢買到的機器。它的架構(gòu)和現(xiàn)在Google看到的架構(gòu)非常像,掛在企業(yè)處理器上。就AI芯片來講,對于計算機結(jié)構(gòu)來說沒有什么是新的。

90年代,隨著語音應(yīng)用的出現(xiàn),出現(xiàn)很多神經(jīng)計算機、加速器,沒有獲得成功?,F(xiàn)在我們用得比較多的是GPU,回顧歷史,90年代專用neurocomputer是做Back Propergation,出現(xiàn)了很多專有計算機。1996年,英特爾推出MMX擴展指令集,這個拓展指令集當時放在CPU里,完全跟CPU集成起來,主要用于做視頻編解碼。由于當時英特爾使用的工藝,其微處理器工藝遠遠好于其他公司,當它發(fā)明MMX后,MMX本身有一定的并行計算能力,可以用于這個訓練。加上良好的工藝和處理器技術(shù),可以解決很多神經(jīng)網(wǎng)絡(luò)訓練問題。隨著英特爾CPU出現(xiàn),人們發(fā)現(xiàn)很多語音算法可全部跑在英特爾處理器上,(完全不需要專門設(shè)計的神經(jīng)網(wǎng)絡(luò)計算機),這導致了當時專用的nerocomputer沒有獲得成功。

GPU是比較有意思的東西,開始的發(fā)展在NeuroComputer之后,當時用于圖形、3D游戲,把算法固化, 有一定浮點計算能力。2001-2005年,隨著圖形的發(fā)展,出現(xiàn)了可編制Shader。新語言是CG,每一個像素點可以進行編程,非常簡單的編程以及非常簡單的計算。當時有人問這個東西(pixel shader)是否可以用于通用計算,答案是可以的,但有很多限制。2006年NVidia隨著Geforce8800的推出,發(fā)明了CUDA可編程框架,這是最早的GPGPU的原形。當然,除了CUDA,也出現(xiàn)了其他一些的GPGPU編程環(huán)境,如opencl。到現(xiàn)在為止,真正用于做神經(jīng)網(wǎng)絡(luò)訓練、適用新算法的,在服務(wù)器端是GPU,沒有更新的東西出現(xiàn)。

總結(jié),我們看到90年代GPU的成功,主要由于編程框架對AI芯片是非常重要的。NVidia因為做了CUDA,所以有了GPGPU。用一般編程來做,不需要用Machine的模型。所以軟件架構(gòu)對AI來說是非常重要的模型。

指令集對于AI芯片至關(guān)重要 

提到軟件,我們要提到一件事,軟件和硬件的接口,這是我們現(xiàn)在所說的指令集、指令架構(gòu)例如MMX,它也是指令架構(gòu)?,F(xiàn)在的就指令架構(gòu)有幾個問題:為什么英特爾不能在手機、平板處理成功?現(xiàn)在有99%平板手機是ARM市場基本是V7和V8架構(gòu)為基準;為什么ARM不能在服務(wù)器上成功?因為英特爾99%的服務(wù)器、筆記本用的是AMD64指令架構(gòu)(其中超95%由英特爾生產(chǎn));為什么IBM到現(xiàn)在為止還在銷售非常老舊的大型機?美國報稅系統(tǒng)也是大型機。IBM360是一款經(jīng)典的大型機,是現(xiàn)在擁有最古老的指令架構(gòu),將近50年歷史。當年阿波羅登月用的就是IBM360,現(xiàn)在還在使用。

為什么有這些情況出現(xiàn),是由于指令架構(gòu)是軟硬件非常重要的接口,如果我們要做AI芯片,指令集是避免不了的事情。

SoC系統(tǒng)架構(gòu):這是NVidia Tegra SoC,首先有應(yīng)用程序處理器,里面用的是ARM、圖形處理器,像NVidia CUDA,我們還有無線電DSP、音頻DSPs、安全處理器、電源管理處理器等。這里有很多處理器,每個處理器都在使用自己的指令架構(gòu),每個指令架構(gòu)從軟件角度來講都過于龐大。由當你做SoC,很多CPU、GPU都是從IP的方式買來的,每個IP都有自己的專用平臺指令集。有時候不同的廠商會開發(fā)不同的指令架構(gòu)。一個商業(yè)SoC下來,里面可能有數(shù)十個指令架構(gòu),不同的指令架構(gòu)有不同的軟件系統(tǒng)。

這是一個非常復雜的事情,看AI芯片也涉及指令架構(gòu)問題。我們回顧一款經(jīng)典AI芯片,這是Berkeley的芯片,當時的想法是Cray是世界上一個向量計算機,用向量處理器、標量處理器、CPU,當時之所以這么做的原因是我們知道超算是非常干凈的編程模型。這是我們最后做出來的45兆、720兆,大概16.75mm^2的處理器。我們用到32-bit MIPS CPU核。我們考慮CPU核有爭論,是購買還是自己做?那時候MIPS有R3000,它有協(xié)處理器接口,當時沒有軟核,也沒有邏輯綜合。所以我們決定自己做,這不光是實際客觀原因,也包括技術(shù)原因。我們用到向量處理器,它對Cache的影響非常大,處理器的接口效率非常低。商業(yè)處理器,所謂的Glue Logic非常龐大,從面積、功耗來講都不是非常有效率。非常重要的一點是我們沒有完整的系統(tǒng)模擬器,當我們做經(jīng)典AI芯片時,這個芯片是為了語音做的,里面遇到現(xiàn)在我們遇到的所有問題?,F(xiàn)在我們做AI芯片時,同時可以問這個問題,相信這些問題是存在的。這里的目的是想給大家一個概念,為什么CPU和指令架構(gòu)非常重要,不光是AI加速器,處理器本身也是非常重要的。

2000年左右有以Linux為代表的開源軟件,開源軟件和開源標準獲得非常大的成功。網(wǎng)絡(luò)界出現(xiàn)Ethernet、Many、TCP/IP,有很多開源實現(xiàn),也有私有實現(xiàn)。現(xiàn)在操作系統(tǒng)有開源的標準,如Posix系統(tǒng),Linux、FreeBSD、Windows也是遵循它。編譯器是SQL,開源實現(xiàn)MySQL和PostgresSQL,私有實現(xiàn)Oracle和M/S DB2。圖形標準是OpenGL,開源實現(xiàn)Mesa3D,私有實現(xiàn)M/S DirectX。我們有指令集,同時有私有化實現(xiàn)。圖形也是同樣的道理,既然指令這么重要,可我們卻沒有開源指令標準。因為這個東西非常有用,所以還是出現(xiàn)非常多私有化實現(xiàn),包括X86、ARM、IBM360。RISC-V Fit i n這個Table,是個開源標準,也有一些開源的實現(xiàn)。

RISC-V的起源與對AI芯片的改變

我們真正需要很多指令集嗎?而且每個都靠花錢才能拿到的,這些指令必須是私有控制的嗎?為什么不能有一個通用的且開放的免費指令集系統(tǒng)。RISC-V的誕生就是為了回答這幾個問題。

RISC-V的起源,在2010年左右,也可以說我們是和第三波AI同時起源的。當時我們?yōu)樾马椖窟x架構(gòu),我們看了所有可選的指令架構(gòu),例如MIPS、SPARC和X86。Berkeley,當時主要考慮的是X86和ARM比較多,但都有很多問題。我們知道ARM現(xiàn)在從V7到V8,現(xiàn)在發(fā)明到V8.1,加了很多指令,有很多指令的拓展。這是ARM的指令架構(gòu),V8設(shè)計之初本來目的是有一個干凈的指令架構(gòu),可是實際在每一版本的迭代過程中都會ARM都會增加很多新功能,它會變成一個“胖子”,而且是越來越胖。據(jù)說現(xiàn)在做到V9。

RISC-V起源故事:當時我們看了X86和ARM,X86是不太可能,IP問題,實現(xiàn)復雜度太高。我上大學時,教授說等你畢業(yè)時,英特爾會加上兩三千條指令?,F(xiàn)在看來確實如此。當時ARM幾乎不可能,也沒有推出64位處理器,同時具有很多IP法律問題,復雜度也不低。雖然它號稱是Advance RISC Machine,但實際上是個復雜的CISC machine。所以我們開發(fā)了新的,也就是大家所知道的RISC-V指令架構(gòu)。四年后(2014年時)發(fā)布第一個公開標準,我們在Berkeley做了很多流片,從第一天誕生起,它是為了加速器的研究所設(shè)計的。第一天就是為了支持加速器和AI。正確讀法應(yīng)該是RISC-Five,而不是RISC-V。這在Berkeley發(fā)展了5代,第1代最早,在80年代初。SOAR(RISC-3)是大家不太熟悉的,SPUR(RISC-4)有很多大佬是這里畢業(yè)的。2011年是RISC-V。

RISC-V有什么不同?首先,它非常簡單和非常干凈的設(shè)計。用戶指令和特殊指令分開,它是模塊化的,可以做自己定制化的模塊和擴展,有足夠的指令空間做定制化。它是穩(wěn)定的架構(gòu),當我們定了RISC-V本身的基準指令后,不會再有變化。要想增加新的指令,可以通過擴展子集實現(xiàn),而不是加強新版本,這對穩(wěn)定性來講非常重要。

OURS譚章熹:開源RISC-V指令架構(gòu)與AI芯片 | CCF-GAIR 2018

為了維護RISC-V的標準,我們成立了RISC-V基金會?,F(xiàn)在也有中國企業(yè)在其中,目前這個基金會里大概有150家公司。所有的大公司,除了英特爾和ARM以外 (直接競爭手段),其他都在里面。

總結(jié),RISC-V作為軟硬件接口的指令架構(gòu),對AI芯片提供了非常重要的基礎(chǔ),它有非常好的標準指令子集,有編譯器、Linux支持,它沒有任何法律的問題。這樣的靈活性使得自由修改AI擴展是非常容易的事情。OURS是一個創(chuàng)業(yè)公司,我們的目的是使用RISC-V讓所有企業(yè)以最低的門檻使用AI+RISC-V芯片。我們是RISC-V非常直接的參與者,有多次RISC-V芯片流片的經(jīng)歷,我們很快會推出基于RISC-V的開源AI芯片。算法很重要,軟件很重要,對特殊領(lǐng)域的支持,比如Domain-Specific Knowledge才是AI芯片的根本。

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。

分享:
相關(guān)文章

主編

雷鋒網(wǎng)副主編,長期跟蹤企業(yè)技術(shù)戰(zhàn)略,聚焦ToB。選題重點是專訪和深度策劃文~ 加我請?zhí)砑游⑿牛簀arvis1587,備注來意。
當月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說