如果給你30秒鐘的時間,如何給投資人說明DPU是什么,可以做什么? 國內外所有的商用DPU公司的CEO、CTO估計都講不清楚... 因為你無法在現實生活中找到一個恰當的例子說清楚。但實際上一句話就能說清楚:
大領導們(CPU)的時間很寶貴吧,所以一般來說都會有自己的助理,或者是一些大型的機構都有負責Operation的團隊,即便是傳統的企業也有辦公室主任的崗位。而DPU恰恰就是在干這個工作的。而基于這樣的視角就會明晰DPU的職責了,什么該做什么不該做點到為止。
可惜國內的很多人都習慣了形容詞管理和各種越俎代庖,并且有句口頭禪:“我這是為你好啊”,做網絡的總喜歡沒事就幫你算個路徑, 做計算的總喜歡沒事就幫你Offload.
而一個好的助理總會把事情拿捏的很好,并把整個組織內其他的成員(GPU/TPU/NPU ...DSA)協調溝通好,關鍵的決策(Branch)還是要交給領導(CPU).
所以從這個視角來看算力網絡就有點意思了,你幫人家調度不收錢圖個啥,你幫人家調度了收了錢憑啥?
這里引入到一個機構的運營,那么就不得不談操作系統這個話題了,曾經畫過這樣一張圖:
當然還留了一個尾巴,從架構圖上來看,類似于底層上的神龍、洛神、盤古都有了,還缺一個飛天。那么這也正是渣今年的想在操作系統上進行的探索.恰逢咱東川路男子技術學院IPad的ppt[1],這場軟硬件融合的變革中,不碰到軟硬件結合的操作系統都屬于劃水、摸魚、耍流氓。
從異構硬件的視角來看對操作系統的需求:
但是從指令集上面臨挑戰:
兩階段編譯雖然能夠解決部分問題,但是需要觸碰到用戶代碼,而且對應用非常不友好:
另一個問題是緩存一致性和內存管理的問題,所以才有了OSDI18的SplitKernel的方案:
也就是說這樣,將處理器和內存分離,并將MMU和TLB轉移到分離的MMU上
但是另一個問題來了,Latency Hiding如何解決,他們的選擇是加Cache
而我們的解決方案是通過存算一體的并行處理來解決指令集不一致和延遲隱藏的問題:
另一個問題是尋址的處理, P4來做MMU是不是會很爽,利用IP地址和內存地址一起混合尋址,IP地址做頁索引.
而這樣的一套系統因為有了Memory Shim Layer,配合網絡本身的ACL能力做頁表隔離和inline加解密都可以非常容易的實現Enclave. 而至于多核多處理器同步的語義,基于BRAM的netDAM也可以很容易實現ffwd(SOSP'17)那樣的架構, 將所有競爭者的臨界區集中到一個高速存算一體器件(NetDAM-SEQ)上.
那么接下來就有一個問題了, 進程切換帶來的微秒級延遲和調度。而就操作系統而言,幾十年前是為了幾十個人共同使用一個電腦構建的進程、線程架構,而現在呢?內核該如何設計,本質上應當把調度交還給用戶態,這也符合現在很多編程語言自身構建協程庫的發展趨勢。另一方面是驅動的問題,內核中大量的驅動帶來的問題是否可以通過memory shim layer來解決?答案是肯定的,這也是渣一直要搞memif的原因:
操作系統的發展在國內有些緩慢,本質上我們對Operating的定義是不精確的,更多的應該有運營和運籌的意義。更廣義的談,字符,語言,文化深刻的影響著我們的思維方式和處事原則。象形文字本身具有更高的信息量,但同時卻弱于西方符號系統對于結構的抽象和歸納,例如一個漢字微積分……同樣用中文描述抽象代數也是一個非常痛苦的事情,這也是導致整個代數學在國內發展不好的原因。
偶然間讀到木心[2]一段話,似乎就釋然了……
中國的“人”和中國的“自然”,從《詩經》起,歷楚漢辭賦唐宋詩詞,連綰表現著平等參透的關系,樂其樂亦宣泄于自然,憂其憂亦投訴于自然。在所謂“三百篇”中,幾乎都要先稱植物動物之名義,才能開誠詠言;說是有內在的聯系,更多的是不相干地相干著。學士們只會用“比”、“興”來囫圇解釋,不問問何以中國人就這樣不涉卉木蟲鳥之類就啟不了口作不成詩,楚辭又是統體蒼翠馥郁,作者似乎是巢居穴處的,穿的也自愿不是紡織品。漢賦好大喜功,把金、木、水、火邊旁的字羅列殆盡,再加上禽獸鱗介的譜系,仿佛是在對“自然”說:“知爾甚深。”到唐代,花濺淚鳥驚心,“人”和“自然”相看兩不厭,舉杯邀明月,非到蠟炬成灰不可,已豈是“擬人”、“移情”、“詠物”這些說法所能敷衍。宋詞是唐詩的“興盡悲來”,對待“自然”的心態轉入頹廢,梳剔精致,吐屬尖新,盡管吹氣若蘭,脈息終于微弱了,接下來大概有鑒于“人”與“自然”之間的絕妙好辭已被用竭,懊惱之余,便將花木禽獸幻作妖化了仙,煙魅粉靈,直接與人通款曲共枕席,恩怨悉如世情——中國的“自然”寵幸中國的“人”,中國的“人”阿諛中國的“自然”?孰先孰后?孰主孰賓?從來就分不清說不明。
對于錢學森之問和李約瑟之問,很有可能都和這個問題有關。從1到100做的非常棒,因為你在自然中給國人賦予了型,而從0到1則是非常難的,因為本身的語言文化上并沒有很好的抽象能力,所以我們經常的說,讓專業的人干專業的事,專業的人是什么?如何評價?或者按照現在集成電路和專用芯片那么火的行情來看,DSA ,Domain 怎么分?Specific 了什么?Architect 了啥?這幾個問題回答不清楚前的所有架構都有over engineering 的嫌疑。
所以最終還是需要改變我們自己的思維方式、語言習慣,同時還要多一些文化自信,因為只有自信你才能有提出問題的能力, 否則就還是拿著自主可控玩著抄襲國外的事情,還美其名曰追趕國外先進技術。當然還有一些太過自信的閉關鎖國,別人限制什么就自己去另外做一套,最終做一個東西多一個敵人,例如某企業開始造車,本質上前幾年各個主機廠都給它們提過:"你都做完了,我們做什么?" "我這些都做了是為你好呀" 這樣的事情一直在發生著。
審核編輯 :李倩
-
操作系統
+關注
關注
37文章
6814瀏覽量
123313 -
DPU
+關注
關注
0文章
358瀏覽量
24171
原文標題:DPU和云操作系統
文章出處:【微信號:LinuxDev,微信公眾號:Linux閱碼場】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論