国产自主技术的重要性,如今体现得越来越明显,尤其是在高性能半导体领域,我国正在全力奋起直追,面临的困难和挑战很多,取得的成果也不少,一方面需要继续加大马力,另一方面也需要予以肯定和支持。
在高性能CPU处理器领域,Intel、AMD是我们最熟悉的两个名字,还有企业级的IBM。我国也在不断投入,相关企业并不少,但由于高性能CPU的特殊性,门槛极高,目前只能采取引入授权再发展的方式,而性能距离世界顶级水平还有极大的差距,只能一步一步缩小。
龙芯是起步较早的国产CPU之一,而且早就已经完全独立自主研发和经营,不拿国家一分钱资助。龙芯走的不是我们日常熟悉的x86指令集,而是MIPS指令集体系,所以更多应用在一些特殊行业领域,消费级市场上也有但不多见,还处在生态建设的初级阶段。
目前,龙芯已经发展出了多个龙芯产品家族,其中针对桌面市场的最新产品是龙芯3A3000。
想必大家一定很想知道它的性能到底如何吧?之前也陆续见过一些官方非官方的性能数据,但都很零散。最近,有龙芯爱好者对龙芯3A3000做了一次全面的实际性能测试,并发表在龙芯社区,这里节选一部分来看看(略有修改)。
据介绍,这套测试平台是去年9月份龙芯俱乐部搞龙芯3A主板团购时买的,自行搭建,测试工具为phronix-test-suite,尽可能理性、中立、客观、全面,不吹不黑,不夸大成绩,也不回避问题。
龙芯3A3000主板照片,风扇下面是龙芯的CPU。另外两块散热片下面分别是南桥和北桥。
拆下风扇后的龙芯3A3000近照。LS3A3000D-LP的编号代表这是一个低功耗版本的龙芯3A3000。
开机后BIOS:可以看到CPU的主频是1400MHZ,一级指令缓存64KB,一级数据缓存64KB,二级缓存4MB。
主板上的国产Unilc(西安紫光国芯半导体)内存条。
龙芯3A3000频率最高1.5GHz,这里测试的是1.4GHz版本,因此最好性能应该比以下测试的再高出5%左右。
此外需要说明的是,龙芯3A3000笔记本里带的龙芯3A3000的主频被限制在了1.2GHZ。
性能测试基本环境
龙芯3A3000处理器性能测试
测试是在Linux系统上进行的,很多测试内容都偏重CPU理论性能测试,跟大家熟悉的Windows下CPU性能测试不同,具体原理就不赘述了,大家只要看看结果和对比就行了。
测试对比型号除了Intel酷睿i5-7200U、赛扬J1900,还加入了同样国产的处理器、来自飞腾的FT-1500A、FT-2000+。
i5-7200U是Intel第七代酷睿移动平台的低压低功耗版本,14nm工艺,双核心四线程,主频2.5-3.1GHz,集成核显HD 620,热设计功耗15W。
赛扬J1900则是一颗超低功耗的移动产品,隶属于Bay Trail家族,2013年就发布了,22nm工艺,四核心四线程,主频2.0-2.42GHz,集成核显HD Graphics,热设计功耗10W。
作者的结论:
从纵向上看龙芯的发展,相比龙芯2F,龙芯3A3000的性能有了很大的进步。工艺上,从龙芯2F的90nm,提高到了龙芯3A3000处理器的28nm;主频从龙芯2F的800MHZ提高到了1.5GHz。
在用户实际应用上,基本可以达到流畅使用的程度。与Intel处理器相比,龙芯3A3000综合性能相当于Intel赛扬J1900,单核性能相当于i5-7200U的30%~40%。
通过本文中所进行的34项测试,我们发现龙芯3A3000在性能不好的根源有以下几个:
同主频性能较弱
从同主频性能来看,龙芯3A3000已经超过了J1900,但只有Intel i5-7200U的60%~70%。预计2019年流片的龙芯3A4000同主频性能至少有30%的性能提升——那样就能达到i5-7200U的80-90%。
主频太低
这是龙芯处理器让众多爱好者耿耿于怀的的一个难以回避的弱点。诚然,主频不代表所有性能,但主频太低是万万不行的。
J1900的同主频性能弱于龙芯3A3000,但由于它的主频可以到1.99GHz,并且还可以睿频到2.4GHz,在多项测试中一样超过了龙芯3A3000。
i5-7200U基础主频达到2.5GHz,睿频可以到3.1GHz。飞腾2000+主频可以到2.2GHz,而兆芯的KX-6000主频甚至可以到3.0GHz。
飞腾、兆芯处理器可能在同主频性能上弱于龙芯,但还是可以靠着较高的主频击败龙芯3A3000。
龙芯主频较低的原因之一是落后的工艺制程,目前还在使用28nm工艺,而Intel、飞腾、兆芯等已经在使用14nm工艺。
根据龙芯的发展规划,到2020年龙芯将使用14nm工艺对了龙芯3C5000进行流片,主频能够达到2.5GHz。
系统软件优化不够
在测试中,我们发现的问题有三角函数等数学函数运算速度过慢,看起来部分硬件浮点运算的没有得到应用,而且龙芯缺少一个优化的数学函数库。在加密解密指令上,缺少AES硬件实现。
在测试中,我们发现使用Debian操作系统、GCC7.3和1.4GHz的龙芯3A3000进行的各项测试基本优于使用Loongnix操作系统、GCC4.9编译器和1.5GHz龙芯3A3000的组合。
我们认为编译器的优化对发挥龙芯的性能非常重要。
在测试中,我们也发现使用4.14的Linux内核会比3.10的Linux内核上有相当程度的性能提升,龙芯依然缺少优化的Linux内核。
应用软件优化不够
由于MIPS架构缺少软件生态,各种应用软件缺少针对MIPS架构的优化。具体表现就是在很多软件有针对X86系统的汇编优化。
要建立龙芯的生态,发挥龙芯处理器的性能,相同级别的优化不可缺少。随着龙芯未来架构的优化、主频的提升,影响龙芯发展的瓶颈将不是处理器的性能,而是软件生态的建设,也就是系统软件优化以及应用软件优化。
其中,各种应用软件的优化将是提升龙芯用户体验的捷径。实际上,龙芯也已经意识到了这些问题,提出了要学习苹果“app by app, feature by feature, pixel by pixel”地进行优化。