資源簡介
龍芯的胡偉武在“2020年CCF全國計算機體系結構學術年會”上作報告:《指令系統的自主與兼容》時的PPT展示內容。這是在線觀看時屏幕截圖重新制作PPT。
內容總結:
1、LoongArch 是全新的指令集,不是在 MIPS 上做的擴展。包含基礎指令 337 條、虛擬機擴展 10 條、二進制翻譯擴展 176 條、128 位向量擴展 1024 條、256 位向量擴展 1018 條,共計 2565 條原生指令。
2、LoongArch 的"指令格式"是 MIPS 的超集,仍為RISC且兼容MIPS指令格式,但二進制不同。大部分 MIPS 指令可以直接映射為 LoongArch 指令,且龍芯的編譯器已經實現把 MIPS 匯編編譯為 LoongArch 二進制。
3、龍芯提供基于 LoongArch 的 Linux 操作系統,在此操作系統中除了運行原生的 LoongArch 程序,還能通過翻譯的方式兼容 MIPS、x86、ARM、RISC-V 這幾種指令集的 Linux 程序。
4、龍芯的二進制翻譯與 qemu 的軟件翻譯不同,龍芯是軟硬件結合方式。qemu 軟件跨體系翻譯一般只有 5% ~ 20% 的性能,龍芯的翻譯相對于 qemu 在整數運算方面有數倍提升,而在浮點運算方面有數十倍的性能提升。
5、翻譯執行 MIPS 目標為 100% 的原生性能,翻譯執行 ARM 目標為 90% 原生性能,翻譯執行 x86 目標為 80% 原生性能,并可通過某種方式安裝運行 Windows,對 Windows 的整體翻譯執行目標為 70% 原生性能。
6、從當前已有的測試結果來看,把 C/C++ 代碼編譯為 MIPS 和 LoongArch 分別運行測試,LoongArch 比 MIPS 有近 17% 的性能提升,翻譯執行 MIPS 平均性能在 100% 左右。
7、龍芯 2020 年之后生產的 CPU 都不再原生支持 MIPS,但因為可以 100% 翻譯執行 MIPS,所以以前的 MIPS 生態仍然完全兼容,但以后會以發展 LoongArch 原生生態為主。
8、將會成功組建自主指令系統聯盟,聯盟成員免費使用 LoongArch 指令集,聯盟成員可以免費獲得龍芯的低于 ARM A53 性能的那些CPU核心設計,聯盟成員之間不發生指令系統訴訟(防止Intel/ARM等擠進來,它們一旦加入就相當于x86/ARM指令集充公了)。
代碼片段和文件信息
評論
共有 條評論