有道理的是,我們會發現很多應用程序,我們可以在其中利用人工智能的力量來改進我們的流程并更快地構建芯片。
Mentor, a Siemens Business 的高級營銷總監 Jean-Marie Brunet 擔任主持人,主持了一場出席人數眾多且熱鬧非凡的 DVCon 美國小組討論,討論人工智能 (AI) 和機器學習 (ML) 的熱門話題。
長達一小時的會議由 Achronix 副總裁兼首席技術專家 Raymond Nijssen 主持。Arm 研究員兼技術總監 Rob Aitken;AMD 高級研究員 Alex Starr;Mythic 硬件工程副總裁 Ty Garibay;英偉達應用深度學習研究主管 Saad Godil。
以下是基于小組成績單的四部分迷你系列的第 1 部分。它涵蓋了 Brunet 關于人工智能如何重塑半導體行業的第一個問題——特別是芯片設計驗證和小組成員的印象。
第 2 部分涉及 AI 芯片的設計和驗證,而第 3 和第 4 部分包括觀眾成員的問題和小組成員的回答。
Raymond Nijssen:如果你看看正在發生的變化,我們會看到 FPGA 行業發生了巨大的轉變。我們來自傳統應用程序,在這些應用程序中,您會看到 DSP 應用程序通過嵌入在 FPGA 中的 DSP 處理器向架構轉變,在數據移動和計算性質方面更適合機器學習應用程序。這些計算的根源相當簡單。所有這些算法之間有一個共同點,它基本上由許多以各種巧妙方式實現的乘法組成。當然,有很多方法可以對問題進行切片和切塊。歸根結底,從概念的角度來看,它是一個相當簡單的芯片,然后你重復了很多很多很多次。
復雜性并非來自芯片的多樣性或異質性。這些芯片往往是同質的,重點是數據移動和基本算術。從這個意義上說,從傳統設計驗證的角度驗證這些芯片與您所知道和已經做過的并沒有什么不同。系統的性能驗證要復雜得多,因為系統中有太多的軟件。
所有的軟件棧都是碎片化的,不同的人解決同一個問題有不同的方式,這就導致了完全不同的解決方案。你可能會發現你在一個芯片中放置了大量的乘法器來實現高 TOPS 率。你發現你不能讓他們忙,因為你的內存子系統的某個地方或者數據訪問的方式有一些瓶頸,特別是如果你有稀疏的矩陣。這會很復雜。最后,AI芯片驗證可能比驗證處理器更復雜。
Rob Aitken:我認為這很像驗證處理器,因為機器學習單元本身正在執行處理。它不是 GPU。它不是 CPU;但它作為程序的一部分進行了大量的乘法和加法。我認為有趣的驗證問題正如有人描述的那樣——這些處理單元如何相互交互以及系統在做什么。
您可以看到,當您構建一個每瓦可實現 20 萬億 TOPS 的加速器時。但是你不知道如何將它連接到任何東西,因為你不知道數據是如何從系統內存進入盒子的[以及]然后,當它完成計算時,結果是如何報告回來的。
加速度如何適應整個控制流程。正如雷蒙德所說,不僅要構建解決問題的軟件,還要構建硬件,這需要一個完整的練習,以便您可以消除盡可能多的瓶頸。此外,這樣您就可以識別仍然存在的瓶頸并設計您的系統,使其盡可能快地執行。已經完成了大量工作,但還有很多工作要做。
從機器學習驗證的角度來看,我認為它通常是 EDA 問題的一個有趣的子集。如果你看看 EDA,在過去的 30 年里,人們建立了大量的啟發式算法,這些啟發式算法實際上非常好。
與許多其他問題不同,如果您只是將機器學習應用到典型的 EDA 問題中,結果不一定會變得更好;您的解決方案實際上可能更糟。如果你回顧 1990 年代的前一波人工智能,那里有一大堆關于機器學習和你最喜歡的驗證方面和其他 EDA 問題的論文。他們中的大多數人都無處可去,因為計算能力并不真正存在,并且因為在深度神經網絡與較淺的神經網絡上學習的想法并沒有真正站穩腳跟。
我們現在發現,查看一些具體問題,您可以找到好的解決方案——例如,Arm 所做的一些工作著眼于選擇哪些測試向量或多或少有可能在驗證套件中增加價值。事實證明,這個問題相對容易表述為機器學習問題,特別是圖像識別問題。一組標準的神經網絡可以計算出這組向量看起來很有希望,而那組看起來不太有希望,我們能夠在整體驗證吞吐量上獲得大約 2 倍的改進。除了顯而易見的解決方案之外,ML 在算法方面肯定有解決方案,我們現在都在以某種形式構建 AI 芯片。
Alex Starr:我將從我們開發的復雜系統設計方面的基線開始。我們擁有常見的多芯片和多插槽產品,當然對于 AMD 來說也是如此,因此我們已經面臨規模挑戰,你肯定會在 AI 方面看到這一挑戰。許多設計必須處理這個問題。從某種意義上說,我們已經通過多種方式解決了這個問題,包括使用基于混合引擎的流程以及在驗證和仿真中更抽象的建模。
如前所述,當我看到它時,這些設計中的計算引擎相對于我們今天在 GPU 和 CPU 中使用的一些現有計算引擎來說相當簡單。從 IP 級別的角度來看,它可能相當簡單。您如何應對大型設計的縮放?這確實是一個軟件問題——整個系統的性能如何?
所有這些設計都將根據它們執行這些機器學習算法的速度來衡量。那是硬件和軟件/固件問題。我認為業界將不得不了解我們如何優化性能,而不僅僅是設計本身,而是整個生態系統。這就是我在 AMD 參與的事情。這是我的熱情之一,也是我們多年來一直致力于真正嘗試和改進整個系統生態系統并從中獲得性能的工作。我們必須解決巨大的性能優化挑戰。關于“構建復雜設計”方面的問題,我認為,對我們來說,這主要是照常營業,沒有真正的人工智能特定。
從“我如何在驗證過程中使用 AI”這個問題來看,我認為這是一個很大的擴展領域。今天,我們可以在混合系統上運行大型設計并處理大量數據。我們如何處理這些數據?從歷史上看,我們一直在查看波形以獲得微觀細節,但這些是運行多個軟件堆棧的大型生態系統。如何調試我的軟件?當我想優化那個系統時,我應該把我的工程師放在哪里?獲得高可見性是關鍵,人工智能可以在如何分析我們從系統中獲取的數據方面發揮作用,并在我們的方法中更有針對性。
Ty Garibay:在我們的芯片上工作的設計團隊和驗證團隊基本上實現了與人的生成對抗網絡。你有設計,你有高效的人試圖攻擊它,隨著設計人員修復它,讓它變得更好,并實際創建一個新芯片,設計會隨著時間的推移而發展。
挑戰在于這個芯片是獨一無二的,除非你在做衍生產品或下一代 x86 或類似的東西,否則沒有基準數據或從芯片到芯片的基準數據的可見性有限。在當前的環境中,我們正在構建機器學習芯片,就像我們在狂野西部一樣,每個人都選擇按照自己的方式做事,聲稱自己有一種特殊的醬汁。很難看出我們在哪里可以像 Arm 那樣捕獲大量信息,但他們能夠從用于構建 Arm 核心的 Arm 測試流中捕獲信息。
這類似于 Breker Systems 的一個名為 Trek 的系統,該系統可以生成內存系統目標測試。該工具以自己的方式學習,盡管它是一種有限的學習工具。隨著我們對第二代產品的深入研究,顯然有機會。我們了解我們正在尋找什么來使用我們收集的數據并利用這些數據來提高驗證效率。
Saad Godil:我同意我的同事們所說的很多內容。我將在構建 AI 芯片時再考慮一個問題。人工智能領域正在快速變化,這將對驗證團隊構成有趣的挑戰。今天,我們必須構建能夠快速適應不斷變化的規范的驗證環境。這將變得更加重要。
讓我用一個例子來說明這個概念。我的同事每周都有一個論文閱讀小組。他們每周閱讀不同的人工智能論文。有一個星期,有人說,“讓我們回去讀一篇經久不衰的經典論文?!?那篇論文發表于 2017 年,在該領域已經過時了!
構建芯片需要時間,這意味著您將面對一個移動的目標。你應該構建驗證環境,讓你在短時間內做出反應,這將為你提供這些 AI 芯片的競爭優勢。
在構建 AI 芯片的話題上,總的來說,業界一直在設計已經處理規?;男酒?。從這個角度來看,我認為它不是獨一無二的。我確實認為這是這種環境的屬性,我希望我們能讓更多的人在這個領域工作。我期待人們在這個領域提出一些很酷的解決方案,但我不認為有任何獨特之處僅限于人工智能。
另一個問題是,人工智能將如何影響驗證?對此,我很看好。很多人都說人工智能是新的電力,將會有很多行業受到它的影響。我絕對相信我們的設計行業將是其中之一??纯次覀儞碛械臄祿?,我們所做工作的復雜性。我們會發現很多不同的應用程序,我們可以利用人工智能的力量來改進我們的流程并更快地構建芯片,這很有意義。
在這個由四部分組成的迷你系列的第 2 部分中,小組成員將討論工具供應商是否準備好提供他們在特定領域驗證其芯片所需的東西,以及工具供應商是否準備好提供幫助。
審核編輯 黃昊宇
-
芯片
+關注
關注
447文章
47818瀏覽量
409192 -
amd
+關注
關注
25文章
5202瀏覽量
132638 -
半導體
+關注
關注
328文章
24534瀏覽量
202195 -
人工智能
+關注
關注
1776文章
43893瀏覽量
230634 -
Achronix
+關注
關注
1文章
69瀏覽量
22468
發布評論請先 登錄
相關推薦
評論