Arm可伸縮矩陣擴(kuò)展(SME)在Linux 5.19發(fā)布之前準(zhǔn)備就緒
Linux 5.19將為支持Arm可伸縮矩陣擴(kuò)展(SME)做好所有基礎(chǔ)準(zhǔn)備工作??蓴U(kuò)展矩陣擴(kuò)展(SME)是Armv9-A的一個新擴(kuò)展,它建立在SVE/SVE2矢量擴(kuò)展的基礎(chǔ)上,允許矩陣疊瓦存儲、加載/存儲/插入/提取疊瓦矢量、SVE矢量的外積和流式SVE模式。帶有SME的流式SVE模式啟用了新的SME存儲和指令以及SVE2指令的一個子集,而離開流式模式后行為與SVE2沒有變化。
訪問:
VIP會員買1得5:贈愛奇藝半年卡、京東Plus、百度網(wǎng)盤、叮咚買菜
SME是一序列增強(qiáng)CPU構(gòu)架對矩陣運(yùn)算支持的最新更新,SME為支持矩陣運(yùn)算引入了一個新的編程模式和寄存器狀態(tài)。
SME是在可伸縮向量擴(kuò)展(Scalable Vector Extensions, SVE和SVE2)的基礎(chǔ)上建立的,并增加了有效處理矩陣的能力,主要功能包括:
矩陣tile的存儲
存取,插入,提取 tile向量,包括on-the-fly 轉(zhuǎn)置
計算SVE向量的外積(Outer product)
Streaming SVE 模式
您可以在community.arm.com了解更多關(guān)于Arm的SME。
除了Arm工程師為支持可伸縮矩陣擴(kuò)展而進(jìn)行的編譯器方面的修改外,內(nèi)核方面的修改也是必要的,這就是工程師一直在進(jìn)行的工作,而且現(xiàn)在似乎已經(jīng)為Linux 5.19做好了準(zhǔn)備。
通過ARM64的Git倉庫,現(xiàn)在的for-next/sme分支包含了Arm可伸縮矩陣擴(kuò)展的內(nèi)核啟用工作。為了在未來帶有該擴(kuò)展的Arm CPU上啟用SME支持/使用,需要進(jìn)行各種內(nèi)核修改。這也包括為新的流模式和現(xiàn)有的SVE代碼的變化而暴露的ABI的文件,用于SME的使用。
現(xiàn)在,對可擴(kuò)展矩陣擴(kuò)展(SME)的基線支持已經(jīng)存在,引入Kconfig選項以使其可以被構(gòu)建。雖然功能注冊沒有對具有SME的系統(tǒng)在運(yùn)行時支持SVE提出強(qiáng)制性要求,但對流模式SVE的支持卻大多與普通SVE共享,因此其依賴于SVE。
除了需要這組SME補(bǔ)丁外,系統(tǒng)管理員還可以通過一個新的ARM64_SME構(gòu)建時間開關(guān)來切換對SME擴(kuò)展的支持。
如果沒有任何問題在最后一刻出現(xiàn),這個初始的Arm SME支持已經(jīng)準(zhǔn)備好在Linux 5.19主線中使用。
關(guān)鍵詞: Arm可伸縮矩陣擴(kuò)展(SME)在Linux 5.19發(fā)布之前準(zhǔn)備


相關(guān)新聞