中國可以走出自己的路,把今天我們詬病的問題一一解決,還怕不能成為世界一極?_風聞
Opennovo-业余时政爱好者17分钟前
【本文來自《孫凝暉:拼算法還是拼新型基礎設施?中國如何選擇智能計算發展道路》評論區,標題為小編添加】
隨着Windows On ARM的活躍,未來個人或工業算力不一定需要x86/x64體系,RISC-V和ARM獨當一面是完全可期的。美國的芯片業和個人電腦隨着高通X Lite的問世,已經紛紛開始佈局ARM筆記本,且是高性能低功耗的筆記本,基本是向蘋果M芯片看齊的。這樣的發展脈絡,中國完全可以不繞道X86/X64體系。從Windows On ARM開始,英偉達也會大舉進入CPU,在CPU上集成GPGPU,靈活功能調用是一個趨勢。
這個趨勢對於中國選擇發展道路是很友善的,一方面我們可以避開貴而難攀的複雜指令集,另一方面,我們只要在一個指令集上佔的權重足夠重,今天可以有Windows On ARM,明天就可以有Windows On RISC-V或Windows on 中國獨有指令集。因為這一切,本質上是指令集脱敏的,指令集在未來可能就是一種驅動,在各種指令集的CPU上換各種指令集來使用;而相對更難的是“生態建設”。就像今天工業品和資源品不是隨意就能製造的,所以俄羅斯可以用盧布綁定資源品,中國可以用工業品綁定人民幣,這些都不是輕易能構建的,生態也是如此。
CUDA仍舊有很多不足,雖然託管內存讓一些基礎工作變得容易,但還是有很多與.net傻瓜式不同的基礎工作需要考慮。像DirectX12的工作圖“讓GPU自主工作,繞過CPU瓶頸”。這功能是我長期希望的,過去分CPU部分和GPU部分,但我完全認同今天ARM CPU融合GPU、NPU到CPU中。中國網民長期暱稱英特爾是牙膏廠,這足夠可以品出我們對於性能的不滿。在我的理想中,我最好CPU像GPU計算單元那樣豪橫的給計算單元數,4060給了3072個計算單元,我最好普通CPU也可以給3072個核,有的人説“核心調度很難實現”,我咋覺得這應該不難呢~~。在C#沒有出現Parallel.For的時候,我做超線程的方法就是建一個n倍的任務列表,然後交給n個線程去執行,每當線程處理完時,就從任務列表裏再取個任務來運算。如果你們説多核難以管理,處理器頻率不能再增加,那我的理念和理解就是:頻率快是單個計算單元的交付速度,核心多是這幾個騰不開手時任由空餘單元可以給我分擔工作。從這個角度,底層硬件隨便用什麼指令集,只要能幫上層任務解決和交付就行了,上層沒必要管下層怎麼做的,下層也沒必要管上層下一步要做什麼,反正你有任務過來,我就依次往不忙的單元分配任務。或許有人會説“總線帶寬不夠”,那完全可以用電話線的容量思路,以這些計算單元面對的最大瞬時容量去佈置。
總之:
1)中國網民不喜歡美國牙膏廠,原來英特爾是牙膏廠,現在AMD領先後也是牙膏德行,看着不爽。
2)AMD始終比英特爾送得起緩存,就好像L3不要錢似的,等我們搞定先進製程,除了頻率提升外,從L1-L3的緩存最好都這樣多送點。
3)別説調度問題,別説CUDA壟斷,別以為只有硬件廠商在那裏琢磨性能調度,寫軟件的也關心這事,如果硬件設計能讓軟件調度更省心些,這肯定是好事。
4)如果生怕一些硬件握手協議佔用算力,那完全可以像Intel Ultra處理器上的LPE(低功耗能效核 (LPE-Core),就是在原來的E核基礎上繼續低功耗),用來處理一些硬件握手或執行存儲等。即:要像.net那樣,把一些底層跟硬件打交道的事,與普通程序員脱離,這些是基礎驅動的事,別讓普通程序員既操心應用算法,又操心底層問題(比如:分頁內存,我為什麼不能當它是連續的?)你分頁或其它我意想不到的底層特色就會倒逼我必須去額外瞭解更多的底層秘密,這些是不必要的花費。或許這些時間花費可以通過購買英偉達的技術支持,但對於國內更廣大的開發者,這並不是友好的。微軟的.net語言能發展起來,除了CSDN外,微軟自己的MSDN也有專門用來解答的中文網站,有中文的函數説明,但這些英偉達是沒有的。
所以中國有充足的空間可以走出自己的路,把今天我們網上詬病的問題一一解決,你們還怕不能成為世界一極?