1. 關於自研編程語言,華為傳來好消息,或實現從根打破
開發一款操作系統,軟體應用是需要用上編程語言的,要讓計算機能夠識別指令,才能實現功能的運行。市面上大部分的編程語言都來自國外,包括C++、Python、Java語言等等。有關的教科書,教材也是基於國外編程語言編寫。
雖然有現成的編程語言可以用,可華為在建立全面自主的操作系統生態,編程語言又怎樣可能落下呢?
華為傳來了自研編程語言的好消息,或實現從根打破。除編程語言之外,還要在編譯器、指令集、晶元等方面進行根源布局。
對此,華為在自研編程語言帶來了怎樣的好消息呢?華為從根打破,進展如何?
華為自研編程語言不是什麼新鮮事,很早之前在網上就流傳出華為自研編程語言的消息,並將其命名為「倉頡」。
從2022年8月份開始,華為申請了「倉頡語言」的商標,其中一項商標被駁回,但後來華為又再次申請。由此可見華為對這項「倉頡語言」的商標十分在意。
一開始外界並沒有過多注意,只是覺得華為要開發某些項目,但隨著時間的推移,有關「倉頡語言」是自研編程語言的消息越來越明確。
直到華為在2021全聯接大會上表示,華為將在2022年正式推出自研的編程語言倉頡。這才真正看清了華為真的在努力開發自研編程語言。時至今日,進展如何呢?
6月16日,華為傳來了自研編程語言的好消息,根據華為副總裁鄧泰華表示,計劃在下半年發布倉頡編程語言。
很多人都在等待這一刻,這一次華為瞄準編程語言或將從根打破。
編程語言准備了這么久,終於到了快要發布的時候了。盡管目前還沒有具體的發布時間,究竟是下半年的幾月幾日還不確定,但這么多年都等過來了,還差這半年嗎?
可以發現,只要是涉及到底層架構的根技術,華為幾乎都有布局的身影。華為開發了鴻蒙,歐拉這兩大國產操作系統,又推出了方舟編譯器提高開發者效率,還有晶元平台的研發,讓外界認識到華為不只是硬體實力強勁,軟體技術的開發水平同樣位居世界一流。
有人好奇這款華為自主研發的編程語言是不是使用中文,如果使用中文,豈不是意味著全球編程語言會迎來大洗牌?那麼關於倉頡語言,究竟是怎樣一個產品呢?
關於倉頡的消息華為並沒有透露太多,但可以知道的是,倉頡將對應上層應用,支持多樣化算力。
至於是否支持中文,基本上不太可能。計算機是國外發明的,二進制,指令集等一些技術架構的使用不會有太大的改變,在整個的編程環境中,大概率還是以英文為主。但也許華為真能獨創中文編程語言也說不準,畢竟中文正逐漸走向世界。
華為全面轉型軟體產業,目前正在做的一些布局都和根技術有關,一旦成功,華為將掌握完全自主的軟體生態環境。甚至改變國產信息技術產業的發展進程,讓國產操作系統,編程語言等一系列根技術走向世界,建立屬於中國的根技術開源社區。
華為或將從根打破,目前布局進展如何呢?先看操作系統。華為開發出鴻蒙,歐拉兩大操作系統,一個是支持萬物互聯的物聯網操作系統,另一個是面向數字基礎設施的生態底座。截至目前鴻蒙系統擁有2.4億用戶,歐拉實現170萬套的裝機量。
開源系統已經建成,生態有序發展,華為開發的操作系統比想像中的還要好。
其次是編譯器。華為對編譯器的布局是推出了方舟編譯器,主要功能是提供開發者統一的編譯平台,讓不同操作系統,應用程序能夠適配統一識別的預言。華為在今年2月份發布了方舟編譯器1.0版本。
晶元就不用多說了,大家都十分熟悉,不管是麒麟晶元還是面向數據中心的鯤鵬處理器,基本上在各大應用平台,終端市場都進行了系列晶元的開發。
還有就是編程語言了,這是華為掌握根技術的重點布局,為能夠在下半年順利發布,華為正努力開發,優化中,相信不會讓大家等太久。
根技術遠不止這些,國外花了幾十年在計算機市場,信息技術體系建立起絕對的影響力。華為用了幾年的時間就有了根技術自主可控的雛形,未來的前景不可限量。
華為正式官宣,自研的編程語言將在今年下半年發布。很多人沒有意識到這件事的重要性,多少年以來編程語言一直被國外把持著,學習國外的知識的技術。現在華為獨創編程語言,屬於中國的信息技術時代終將到來。
對此,你有什麼看法呢?
2. CPU性能大亂斗!國產CPU實力揭露
一直一來,缺芯少魂一直是中國信息產業的心病,中國的CPU市場也一直被Intel、ARM等國外廠商壟斷,龍芯、申威、飛騰等國產CPU在社會上也往往遭到別有用心之徒諸如「打磨晶元」、「騙經費」、「政績工程」等輿論抨擊。不久前,採用申威26010的神威太湖之光在TOP500刷榜,飛騰也公布了採用ARM指令集的飛騰1500A和飛騰2000,龍芯的3A3000也順利完成流片,那麼這些國產CPU的性能到底如何呢?
如何評價CPU
如何評價CPU的性能呢?從體系結構的角度來看,有個指標叫MIPS,即每分鍾執行多少條指令,執行指令數量越多,性能就越好,但這存在一個問題,當CPU指令集不同的時候,比較MIPS就意義不大了——比如A一條指令只算一個加法,B一條指令能做一個1024點的FFT。特別是在不同指令集的情況下,如何評價CPU的性能呢?
評價CPU性能必須考慮應用的多樣性,比如科學運算重視雙精浮點性能,但是如果數據供不上,運算能力再強也沒用;比如PC日常使用更偏重於定點性能;再比如計算中心多任務環境關注的是吞吐率......因此單純用某一個指標來衡量CPU性能是不科學的,必須綜合考量。
業界也推出了很多基準測試程序,比如針對CPU的SPEC,針對嵌入式應用的EEMBC等。SPEC測試是比較權威的測試程序。和一些黑箱測試程序調整計分方式和計分權重後測試結果就發旦搜生變化不同,SPEC測試到底跑了什麼程序,以及各項程序跑分和計分方式全部公開透明,而御兆且覆蓋范圍廣——SPEC2000有12個定點程序,14個浮點程序,而且有比較強的代表性,比如gzip、vpr、gcc、mef、eon等。而SPEC2006則把定點程序擴展到14個定點程序和16個浮點程序。
在計分方法上,SPEC在計分上採用歸一化的幾何平均方法來進行綜合性能評估——將不同CPU的執行時間與參照對象相比較後得到一個相對值。SEPC2000的參照對象是Ultra SPARC 2工作站的主頻為300Mhz的CPU。如果運行測試程序1的時間是參照對象的十分之一的話,測試就是1000分,測試程序2的耗時是參照對象的八分之一的話,則為800分.....最後再算幾何平均——比如SEPC2000有12個定點測試,就將12個測試成績相乘再開12次方,SPEC2006相對於SPEC2000而言僅僅是擴展了幾項測試程序,使測試更加科學合理。這里,我們以三星獵戶座7420和華為麒麟950為例計算SPEC測試成績。
「科普中國」是中國科協攜同社會各方利用信息化手段開展科學傳播的科學權威品牌。
本文由科普中國融合創作出品,轉載請註明出處。
3. 地平線征程5:國產大算力自動駕駛晶元即將量產!
駕駛輔助功能作為車企在新能源時代新的技術護城河之一,在當下受到的關注與日俱增,決定一台車駕駛輔助能力的,除了有能夠看得見摸得著的激光雷達、攝像頭這類感知感測器,在看不到的地方自動駕駛晶元同樣至關重要,它的性能高低直接決定,感知感測器採集到的信息能否被准確、快速的處理。那麼對於高階的駕駛輔助功能,甚至是自動駕駛,我們需要什麼樣性能的自動駕駛晶元呢?
4. 神威是首次完全使用中國芯的超級計算機
據報道,6月19日德國法蘭克福舉行的全球超級計算大會公布新一期全球超級計算機500強榜單,其中神威太湖之光出現在全球超算500強榜單(第四十九期)榜首的位置,神威也是首次主設計生產的國產晶元――「申威26010」眾核處理器的超級計算機。
除了晶元,神威在體系結構、高速互聯、系統軟體等關鍵技術上都實現了前所未有的創新和突破,帶來了性能的跨越式發展。目前已經構建了從編譯器、操作系統、開發環境到應用平台的較為完善的軟體生態鏈,並有針對硬體做性能的優化,確保性能的發揮、節能水平的利用。
5. 突破封鎖!國產晶元終於有了自己的指令集
在半導體晶元領域, 指令系統是一切軟硬體生態的起點 。
以大家最熟悉的ARM和X86為例,它們就分別隸屬於RISC精簡指令集和CISC復雜指令集。
隨著物聯網、5G、AI新興領域的興起,RISC-V和MIPS兩大精簡指令集架構也頻繁出現在我們的視野內。
所謂晶元,其實都是由半導體堆出來的硬體電路,晶體管越多往往代表性能和功能越強。但無論是超級計算機還是智能手環, 它們搭載的處理器都只能識別二進制數據 。
想讓這些晶元正常運行,處理復雜的應用場景,首先就要教會它們學會類似九九乘法表的「演算法口訣」和「數學公式」, 而這些演算法口訣/公式其實就是所謂的「指令集」 。
換句話說, 指令集的功能和效率(演算法口訣/公式的類型),在很大程度上就決定了各類晶元的成就和算力的上限 。
雖然海思麒麟、龍芯、兆芯、海光、紫光、澎湃等國產晶元都在各自領域取得了不俗的成績,但無論是它們,還是其他採用X86、ARM、MIPS、RISC-V、Alpha和Power,選擇封閉、授權還是開源的國產晶元項目,其底層的指令集根基都掌握在別人手裡。
因此, 只有從指令系統的根源上實現自主,才能打破軟體生態發展受制於人的枷鎖 。
好消息是,日前龍芯中科就正式發布了自主指令系統架構「Loongson Architecture」,簡稱為「龍芯架構」或者「LoongArch」。它包括基礎架構部分,以及向量擴展LSX、高級向量擴展LASX、虛擬化LVZ、二進制翻譯LBT等擴展部分,總共接近2000條指令。同時不包含龍芯此前使用的MIPS指令系統, 並具有完全自主、技術先進、兼容生態三個方面的特點 。
目前,採用LoongArch的龍芯3A5000處理器晶元已經流片成功,完整操作系統也已穩定運行,它能對多種國際主流指令系統的高效二進制翻譯鏈,並成功演示了運行基於其它主流指令系統的復雜應用程序。
LoongArch對MIPS指令的翻譯效率是100%性能,對ARM指令翻譯的效率是90%性能,對x86的翻譯效率是80%性能。
此外,龍芯中科還在聯合產業鏈夥伴在適當的時間建立開放指令系統聯盟,在聯盟成員內免費共享LoongArch及有關龍芯IP核。
所謂IP核,我們可以理解為ARM旗下的Cortex-A78和Cortex-A55等,後置都是基於ARMv8指令集打造的核心IP架構,並授權給了高通、三星、聯發科等晶元商開發SoC移動平台。
目前,ARM剛剛發布了ARMv9指令集,如果不出意外將在下半年發布的Cortex-A79和Cortex-X2架構就將採用這套指令集。
近10年來32位手機處理器都是基於ARMv7指令集打造,在A75之前的處理器則是基於ARMv8-A設計,隨後都是ARMv8.2-A一統江湖
ARM指令集可以細分為Cortex-A(ARMv-A)、Cortex-R(ARMv-R)和Cortex-M(ARMv-M),分別適用於不同類型的晶元
比如車載晶元使用的就是Cortex-R(ARMv-R)核心IP
總之, 設計出一個純國產的自主指令集只是萬里長征的第一步 ,關鍵是後續要做出懂這個指令集的CPU(已經有了龍芯3A5000),再往後還需要讓和人類交互的「翻譯家」——編譯器懂這個指令集。也就是需要不斷完善軟硬體生態,讓我們熟悉的系統、辦公、 娛樂 和 游戲 程序都能運行在這套指令集打造的晶元之上。如果做不到這一步,國產指令集和相關晶元也只是空中樓閣而已、
作為國人,我們真心希望LoongArch這種國產指令集可以取得成功,今後無論手機、電腦、車載還是其他半導體晶元都能以使用國產指令集為榮,並走向世界。
擴展小知識
那麼,指令集又是如何影響晶元執行效率的?
我們以RISC和CISC,讓它們分別執行「清潔地面」的命令為例,看看其背後的指令邏輯差異。
邏輯上,「清潔地面」的大概思路是先拿起掃帚,掃地;拿起簸箕,用掃帚把垃圾掃進簸箕;放下掃帚和簸箕,潤濕墩布;再用墩布擦地,直至清潔地面完成。
對CISC復雜指令集而言,很容易理解「清潔地面」這套邏輯,下達「清潔地面」命令後,就能按照規則和順序,一步步自動完成。
對於RISC精簡指令集而言,它一下子可理解不了如此復雜的邏輯,必須將復雜的邏輯順序拆分,然後按照一項項簡單的命令去完成復雜的操作。
比如,想讓RISC精簡指令集完成「清潔地面」命令,就必須依次下達「拿起掃帚」、「掃地」、「拿起簸箕」、「把垃圾掃進簸箕」、「放下掃帚和簸箕」、「潤濕墩布」、「墩地」……
看起來CISC復雜指令集方便又強大?沒錯,如果要同時清潔無數房間地面,你只要對著不同的房屋說「清潔地面」、「清潔地面」、「清潔地面」……即可。
而對RISC精簡指令集,你需要對著每個房間都重復一整套復雜的命令,如果下達指令的人嘴巴不夠快(帶寬不夠大),那清潔地面的效率自然受到影響,難以和CISC復雜指令集抗衡。
但是, 現實生活中,並非所有房間的地面都需要一整套的清潔流程,比如你只需要墩地一個步驟。
對RISC精簡指令集而言,你只需對著需要清潔的房間說「墩地」、「墩地」、「墩地」即可。而由於CISC復雜指令集沒有單獨的「墩地」動作,操作起來就要麻煩許多,完成相同的墩地操作會消耗更多資源,翻譯過來就是發熱更高更費電。
這就是RISC和CISC的本質區別。 說不上誰好誰壞,只能說它們所擅長的領域各不相同。
以ARM架構為代表的RISC精簡指令集,最適合針對常用的命令進行優化,賦予它更簡潔和高效的執行環境,對不常用的功能則通過各種精簡指令組合起來完成。
RISC是將復雜度交給了編譯器,犧牲了程序大小和指令帶寬,從而換取了簡單和低功耗的硬體實現。
對以X86架構為代表的CISC復雜指令集,則適合更加復雜的應用環境。
CISC是以增加處理器本身復雜度作為代價,以犧牲功耗為代價去換取更高的性能。不過,X86架構則可通過對新型指令集的支持(如SSE4.1、AVX-512等),在一定程度上提高指定任務的執行效率和降低功耗。
現在晶元領域是RISC攻,CISC守的格局。以蘋果M1為代表的ARM架構RISC指令集晶元正在染指傳統的X86 PC市場,而且大概率會取得成功。雖然以英特爾為代表的X86陣營曾多次試圖反擊Android生態(如早期的Atom晶元),但最終卻都以失敗告終。ARM最新發布的ARMv9指令集,就給了ARM晶元入侵X86 PC大本營更多彈葯,也許用不了多久Windows ARM版PC也將成為一個更加重要的PC品類。
6. 大部分手機廠家不用麒麟海思的晶元,其原因是什麼
一方面是麒麟晶元的產量不足以供應其他的廠商。另一方面麒麟晶元也是華為的一項核心技術,並不是可以外出出售的。
華為手機的麒麟晶元是我國國產晶元當中目前可以量產使用的核心處理器之一,對華為公司來說是非常重要的一項核心技術。由於華為公司本身的技術差距以及沉澱實力,因此他們本身的晶元產量不足以供應其他的廠家。同時華為對於自己的晶元技術也是非常看重並且嚴格保密的。
一:在同等價格下,麒麟晶元的價格非常高昂。
麒麟海思晶元是華為沉澱了許多年,花費了大量人力物力所生產出來的國產研發晶元。由於華為本身的技術實力肯定要比高通和聯發科等其他廠商要遜色許多,因此麒麟晶元的單個晶元造價以及研發價格是非常高昂的。因此許多廠商為了保證自己的手機生產的利潤,購買麒麟晶元就是一種非常不劃算的做法。