第130章 Apache 2.0 許可證

投票推薦 加入書籤 小說報錯

  第130章 Apache 2.0 許可證

  PPT翻到下一頁,出現一個矩陣乘法(GEMM)的動畫演示。

  「不同廠商的GPU,其計算核心、緩存、內存帶寬、甚至指令集都有巨大差異,直接為每種架構手寫優化內核幾乎是不可能完成的任務,這也是過去跨平台方案性能不佳的主要原因。

  而我們的「Tie分割」技術,可以動態地根據目標GPU的硬體參數配置文件做到這一點。」

  隨後,動畫演示開始,一個巨大的矩陣被高效地切割成多個大小不一的Tie,算法開始自動計算出最優的Tie大小、形狀,以及數據在全局內存、共享內存、寄存器之間的搬運策略。

  「可以看到,即便是同一個GEMM計算,針對不同架構,編譯器生成的底層機器代碼在Tile大小、循環展開次數、寄存器分配和使用上都是完全不同的。

  這正是為什麼,在演示中,我們能在AMD顯卡上獲得接近N卡CUDA性能的原因。「

  說到這,周昀又笑了笑:「大家可能會說,既然都這麼好了,是不是完全可以取代CUDA了?雖然我也很希望做到這點,但還是很遺憾地告訴各位,不行,目前,AetosvO.1僅支持有限的核基礎算子,如各位所見,ReLU,GEMM,Reduce

  等等。」

  PPT上展示了現有能夠支持的算子列表。

  周昀等待議論聲稍歇,才繼續開口:「如各位所見,現階段想要全面超越CUDA,那是不現實的,我們做到的,只是在最核心的矩陣運算上,通過算法和編譯器的優化,盡力彌補了硬體架構本身的差異,為其他平台的開發者提供了多一種可能的選擇。

  我們都知道,構建一個生態困難重重,需要無數開發者的共同努力和時間積累,但不管是Aetos還是其他國產的GPU計算生態,或許它們現在就像一顆種子,非常弱小,需要合適的土壤才能生長,但是某些領域,或許正需要這樣一顆完全自主的種子。「

  他話音落下,整場報告結束。

  報告廳內,所有人都被周昀展示的東西所震撼,也不是沒有其他廠商想要做這樣的事情,比如AMD就做過類似的事情,但最終的結果就是大敗而歸。

  其中的困難,所有人都心知肚明。

  幾秒鐘的寂靜之後,掌聲響起,雖然也有的人並不看好,但這並不妨礙他們對周昀的佩服,能夠邁出這一步,已經足夠厲害了。

  掌聲稍緩,主持人剛宣布進入提問環節,台下立刻舉起了一片手臂。

  第一位獲得提問機會的是一位中年男性:「周博士,非常感謝您精彩的報告,您提到了動態根據目標GPU的硬體參數配置文件』進行優化,我想請問,這個配置文件是內置在編譯器中的,還是需要硬體廠商提供?如果是後者,你們如何獲取諸如指令集細節這類通常被嚴密保護的內部信息?」

  周昀點點頭,這的確是制約他們重寫算子還有優化編譯器的重要阻礙之一:「目前v0.1版本的配置文件主要由我們通過大量基準測試和逆向工程自行構建和維護,但我們更希望這是一種過渡方案,長遠看來,如果想要真正超越CUDA,還需要和其他品牌GPU廠商進行溝通,推動一種標準化的硬體描述接口,生態的建立需要軟硬體協同,我們希望用我們的工作,反過來促進硬體接口在一定程度上的開放與標準化,這對整個行業都是有益的。」

  第一個問題回答完,緊接著就是第二個問題:「周博士您好!您剛才提到性能接近N

  卡CUDA,能否分享一些更具體的benchmark數據?

  比如在特定模型上,在AMD某款主流顯卡和NVIDIA同檔次顯卡上的對比?謝謝!「

  「當然。」周昀笑著操縱著電腦,屏幕切換:「限於時間,PPT上沒有展示全部數據,這裡是我們內部測試的部分結果,在FP16精度下,針對特定規模的GEMM計算,在AMDRX7900XT上,我們的性能可以達到NVIDIARTX4090上CUDA相應操作的約92%,但在更複雜的網絡整體層面,由於算子覆蓋不全,整體加速比會有下降,目前大約在70%-85%區間,這也是我之前說的,現階段Aetos想要全面取代CUDA是完全不現實的。」

  最後一個問題,提問的是一個軟體公司的工程師:「Aetos的技術理念令人振奮,您提到生態建設需要廣大開發者的共同參與,那麼Aetos是否有開源計劃?「

  「會,並且是全面開源!」

  「這可能是今晚最重要的宣布。」周昀頓了頓,繼續道:「AetosvO.1將在本次會議結束後即開源,採用Apache2.0許可證。」

  所謂Apache2.0許可證是一個在開源軟體界極其流行且廣泛使用的許可證,它是一種寬鬆的、對商業友好的開源協議。

  包括:允許個人或公司免費使用Apache2.0授權的軟體、可以任意修改原始碼以滿足自己的需求、可以重新分發原始代碼或你修改後的代碼、可以將Apache2.0授權的代碼集成到你自己的商業軟體或產品中,然後進行銷售,而不需要將你自己的原始碼開源。

  不過也對使用者有一些非常「輕微』的使用要求,在分發的任何副本中,必須包含原始的版權聲明、專利聲明和許可證文本,而且如果修改了代碼,必須在修改過的文件中添加明確的說明,告知他人你對此文件做了更改。

  其對貢獻者也有一些保護,軟體以「現狀」提供,作者和貢獻者不承擔任何,如果軟體出了問題,不能起訴原始作者,風險由使用者自行承擔,許可證明確不授予商標權,這意味著不能使用原始項目的名稱、Logo或其貢獻者的商標來推廣你的衍生產品,除非得到額外授權。

  「我之前說過,單靠我們團隊的力量是有限的,但通過開源,我們希望能匯聚全球開發者的智慧,共同解決跨平台GPU計算的難題,無論是AMD、InteI還是任何其他架構的GPU,我們都歡迎硬體廠商和開發者一起,為Aetos貢獻代碼,完善支持,最後,原始碼倉庫的地址會後會公布,歡迎每一位開發者star、fork、以及提交第一個PR,讓我們一起,種下這顆種子,共同培育它成長為參天大樹。「

  「謝謝大家!」

章節目錄