4月15日,龙芯发布了完全自主的指令集架构LoongArch,与此同时,支持龙芯架构的龙芯3A5000处理器芯片已经流片成功,基于新架构的完整操作系统已经在3A5000计算机上稳定运行。
龙芯在LoongArch之前,一直是采用MIPS的授权。但有意思的是,当年曾比肩x86、Arm,被称为全球三大架构之一的MIPS,其所属公司在今年3月已经宣布放弃继续设计MIPS架构,转而投身到RISC-V阵容当中。
实际上,MIPS架构在现在看来确实有不少较为落后的设计,比如对睿频支持不友好、部分指令老旧拖低性能等。另一方面,中美贸易战背景下,不少国产CPU制造商都受到了不同程度的影响。采用Arm架构的华为、飞腾,以及采用x86架构的海光,相继被列入“实体清单”,指令集授权或是芯片制造都受到严重制约。因此,在这样的背景之下,自主指令集架构的必要性便不言而喻。
早在去年8月,在全国计算机体系结构学术年会上,龙芯创始人胡伟武就透露了LoongArch架构,他声称要研发一款既“自主”又“兼容”的指令集,如果最终达成目标,这将是一个自带生态的自主可控指令集架构。
众所周知,软件生态对于CPU架构而言几乎就是生命。一个全新的指令集架构要能够获得市场认可,目前而言最便捷的方法就是兼容其他指令集架构的生态。比如苹果Mac OS从使用x86 CPU过渡到Arm CPU的过程中,采用了Rosetta 2将原本只支持x86运行环境的软件通过动态二进制翻译来转译代码,以使得软件可以在Arm CPU下运行。
同样,官方宣称龙芯的LoongArch能够兼容MIPS、x86、ARM、RISC-V这几种指令集的 Linux程序,采用软硬件结合的二进制翻译方式,对Arm和RISC-V的翻译效率要比x86更高。甚至根据官方说法,翻译执行MIPS能达到100%原生性能,翻译执行ARM达到90%原生性能,翻译执行x86也能够达到80%原生性能,并可通过某种方式安装运行Windows,对Windows的整体翻译可以有70%原生性能。
不过在编者看来,LoongArch到目前为止依然存在很多疑点。首先,龙芯宣称翻译Arm和x86指令的效率分别达到90%和80%,MIPS甚至实现100%原生性能,但目前除了发布会上的PPT,并没有任何证据能够证明能够达到如此高的翻译效率。而历史上,无论是从PowerPC到x86,还是从x86到Arm,翻译二进制都只是被用于过渡,最终都要利用软件适配才能发挥指令集架构的优势。
另一方面,根据偷跑的性能测试显示,采用LoongArch架构的龙芯3A5000整数性能只比2019年9月发布的飞腾FT-2000/4高出10%;在全局光照渲染器smallpt测试算法性能时,3A5000更是不如FT-2000/4。回想起龙芯上一代曾经号称“国产最强桌面CPU”,但直到2021年最新一代才赶上了对手第一代的水平,实在让人怀疑龙芯的PPT存在“夸大”的嫌疑。
当然,不排除是测试软件或是系统平台对LoongArch适配不完善,那么这就回到了生态问题上。目前为止,龙芯所公开的数据少之又少,甚至连指令集手册都没有开放,生态从何谈起?纵观历史,x86依靠PC浪潮崛起,Arm赶上了移动设备的需求,RISC-V拥抱了物联网时代。而即使是国产替代的需求,龙芯也不具备飞腾等厂商的出货量支撑,更没有华为这样的生态号召力。到底是骡子是马,还得拉出来溜溜,希望等到5A3000正式上市的时候能带来更多好消息。