我們正在迅速接近百萬兆次級時代,幾乎沒有工具和基礎設施來幫助我們構建面向未來的軟件/硬件共同設計的生態(tài)系統(tǒng)。我們不能再等待新的硬件來開發(fā)軟件。同樣,為了滿足這些百萬兆次級及以上系統(tǒng)的性能和功耗目標,我們必須以共同設計系統(tǒng)的形式利用專業(yè)化,這意味著硬件和軟件必須一起設計,而不是孤立地設計。
專業(yè)化還將開源生態(tài)系統(tǒng)擴展到具有開放ISA的硬件中,如RISC-V,它定義了軟件級別互操作性的基本標準,而且還具有專業(yè)化架構以包括新的應用程序功能和硬件支持的靈活性。這項新功能正在開創(chuàng)一個令人興奮的系統(tǒng)設計、全棧研發(fā)(包括構建專用硬件)的新時代。MareNostrum 百萬兆次級實驗平臺 (MEEP) 是第一步,它支持一個靈活的硬件平臺,我們可以使用該平臺映射或模擬各種不同的架構進行開發(fā),包括硬件和軟件。
BSC 正在構建各種軟件和硬件組件,以實現(xiàn)開源軟件和硬件 HPC 生態(tài)系統(tǒng)。我們正在構建開源軟件的豐富歷史,并將其擴展到基于RISC-V指令集架構(ISA)的開源硬件。MEEP支持使用FPGA快速評估硬件架構。這是通往開放式 HPC 生態(tài)系統(tǒng)(包括硬件和軟件)的眾多步驟之一。此外,MEEP也是一種軟件開發(fā)工具,與軟件模擬不同,它允許我們以合理的速度運行整個軟件堆棧以進行交互式開發(fā)。MEEP是我們的數(shù)字實驗室,用于設計,測試和評估未來的百萬兆次級加速器和系統(tǒng),真正的軟件/硬件協(xié)同設計。
與軟件不同,硬件開發(fā)成本非常昂貴,錯誤成本也非常昂貴,尤其是在芯片制造方面。MEEP提供了一種以靈活性換取性能的機制。我們正在使用 FPGA 構建 MEEP,F(xiàn)PGA 是一種靈活的硬件組件或結構,可以一遍又一遍地重新編程。它允許我們像對待軟件一樣對待硬件,具有與軟件相同的靈活性,我們可以重新編譯硬件描述語言以創(chuàng)建新的硬件設計以映射到FPGA結構上。MEEP基礎設施軟件和FPGA使硬件仿真更像傳統(tǒng)的軟件開發(fā)。此外,MEEP可以用于的不僅僅是一個仿真項目,即MEEP的第一個演示器,一個百萬兆次級加速器。MEEP可以模擬其他加速器設計以及CPU。我們還可以使用相同的 FPGA 基礎設施支持基于 FPGA 的加速器。
構建百萬兆次級加速器仿真器
MEEP結合了三個主要組件:軟件,架構和RTL,以及硬件組件,形成一個完整的系統(tǒng)仿真平臺。第一個部署將是用于HPC和高性能數(shù)據(jù)分析(HPDA)應用程序的百萬兆次級加速器。因此,我們收集了 HPC、AI、ML 和 DL 應用程序,以實現(xiàn)加速。
基于此基準測試套件,我們分析應用程序并定義針對這些應用程序優(yōu)化的架構。使用定義的架構,我們可以編寫 RTL,即描述硬件的代碼。在真正的協(xié)同設計實踐中,我們可以靈活地在堆棧中的任何級別、軟件堆棧和硬件的任何層進行更改。這是一種新的靈活性水平,可以為問題提供最佳的整體解決方案,而不是局限于僅軟件更改和/或僅仿真驗證。
最后,我們將軟件和架構以及 RTL 結合起來,并將其映射到模擬器上。這是一個由大約 100 個 CPU 和 FPGA 組成的系統(tǒng)。這種規(guī)模可實現(xiàn)超出正常單芯片評估的更大規(guī)模系統(tǒng)研究。CPU 和 FPGA 的組合為將邏輯仿真器映射到物理資源提供了額外的靈活性。我們可以使用百萬兆次級加速器或我們映射到 MEEP 的任何其他系統(tǒng)的邏輯定義來模糊物理硬件的界限。此外,我們正在使用傳統(tǒng)的加速器架構,可以在初始項目之外進行大規(guī)模研究。FPGA 是提供這種靈活性的基本構建模塊。我們基本上以兩種不同的方式部署FPGA:FPGA Shell和FPGA仿真器。我們將 FPGA 外殼 定義為 FPGA 內(nèi)存 和 I/O 接口。FPGA 外殼包含所有 FPGA 設計中的所有通用基礎設施。FPGA 結構其余部分剩余的 FPGA 資源可用于仿真和/或加速器設計。
HPC 應用程序,包括新興的 AI、ML 和 DL 工作負載。MEEP將使我們能夠展望未來,并在新硬件可用之前展示事物如何工作。這種硅前驗證將通過提高 RTL 的質量并消除錯誤來節(jié)省大量資金。
MEEP提供了一個獨特的機會,可以實現(xiàn)新硬件及其相關硬件的系統(tǒng)級軟件開發(fā)。我們正在構建一個緊密耦合的加速器,該加速器超越了傳統(tǒng)的 HPC 應用程序,包括新興的 AI、ML 和 DL 工作負載。MEEP將使我們能夠展望未來,并在新硬件可用之前展示事物如何工作。這種硅前驗證將通過提高 RTL 的質量并消除錯誤來節(jié)省大量資金。MEEP還將支持新系統(tǒng)的軟件開發(fā),從而實現(xiàn)新硬件和軟件的并行開發(fā)。這對于軟件開發(fā)尤其重要,否則必須等待新硬件可用。在這兩種情況下,我們都可以通過并行化硬件和軟件開發(fā)來縮短開發(fā)時間,并通過在更大的規(guī)模上運行系統(tǒng)來提高整體軟件和硬件質量。
審核編輯:郭婷
-
FPGA
+關注
關注
1625文章
21636瀏覽量
601314 -
HPC
+關注
關注
0文章
309瀏覽量
23654 -
RISC-V
+關注
關注
44文章
2216瀏覽量
45963
發(fā)布評論請先 登錄
相關推薦
評論