我们上手了龙芯电脑,这个国产自研处理器现在好用吗?
来源:电子工程世界发布时间:2021-10-1593浏览
询问 AI
龙芯的故事,80、90、00 后们想必都不会陌生。曾经有个说法叫做:处理器是一台电子设备的芯,即使胳膊腿做的再棒,那芯都是别人的,是生是死依旧被人握在手里。于是 2000 年的时候,中科院计算所开始尝试制造电脑的 CPU,试图追赶,上世纪七八十年代就已经入局微处理器行业的科技巨头:英特尔,与 AMD。后来龙芯项目成功入选了国家的 863 计划,得到了国家战略层面上的扶持,龙芯也成为了我国自研处理器的一个代名词。现在再看这个想法的确是高瞻远瞩的,因为从后来英特尔被爆出来的 ME 后门事件来看,假如别人真的起了坏心思的话,是真的有能力在你神不知鬼不觉的情况下,往处理器里嵌入一个微型的间谍系统的。然而高瞻远瞩是一回事,实际落地执行起来却是另外一回事:满打满算,龙芯从立项至今已经过去 20 多年的时间了,可是这么多年了,我们却好像从没听说过,身边有谁在用搭载了龙芯处理器的电脑……
难道这么多年来,龙芯一直在骗经费?其实啊,龙芯电脑早就有了今天我还搞来了一台,那么小伙伴们,我不叫托尼老师我是米罗,龙芯电脑,能不能用、好不好用、都有谁在用,就让这期视频,给你答案~ 这台龙芯电脑从外观上看,和普通的台式电脑是一样的,机身上的接口也和普通电脑上的差不多。拆开面板之后,看到也是一整套标准 PC 的玩意:金士顿的固态硬盘,国产的紫光 DDR4 内存,一个额定 300W 的 ATX 标准电源,以及一块电脑主板。而在主板上,有前面板 USB 接口,有 SATA 硬盘接口,M.2 固态硬盘的插槽,甚至还有一个用来安装标准无线网卡模块的 MINI PCI-E 插槽,从这个接口配置上看,龙芯电脑的配置还是挺现代的。PCI-E 插槽上还有一块外观上未标明具体型号的 AMD 显卡,背面有一个 HDMI 的数字信号输出接口,这些个配置组成了一台今天我们面前的龙芯电脑,看起来和普通的家用电脑一样,对吧。不过就像 AMD 处理器要配搭载了 AMD 芯片组的主板、英特尔处理器要配搭载了英特尔芯片组的主板才能用一样。这台电脑里的主板啊,其实也是专门给龙芯处理器设计的:m-ATX 规格,比普通台式机的 ATX 规格主板要小上一些,芯片组搭载了一枚龙芯自研的 7A1000 桥片,用来承担处理器与主板各个部件和接口间的通信。而具体的重头戏呢,自然在这个下压式散热器之下了,这是一枚龙芯 3A5000 处理器,它是龙芯在今年七月刚刚推出的一款桌面级处理器。四颗逻辑核心,最高工作主频 2.5 GHz,据说它的性能表现与当今的英特尔处理器相当,已经步入到了 “ 在现实世界中能用 ” 的状态 —— 是不是真的这么回事咱们一会儿再说,小伙伴们先耐下心来继续往下看。
上电,开机。以往我们给电脑开机,第一个画面一般显示的是各家品牌的 LOGO,而这台龙芯电脑开机之后的第一个画面却是四个硕大的汉字:昆仑固件。这是一家国内信创公司制作的 UEFI 启动环境。u1s1,在电脑开机之后第一个画面显示出来的就是中文,这个感觉还是挺有视觉冲击力的。然后就是引导进入操作系统,这台龙芯电脑预装的操作系统不是我们常见的 Windows,而是龙芯中科基于 Linux 核心系统修改而来的发行版系统:Loongnix 系统,所以操作逻辑是 Linux 上面的那套,与我们平时的使用习惯不同。由于之前我看有人说现在龙芯的性能已经和 AMD、英特尔差不太多了,所以为了印证这个说法我们先来跑个分。Linux 上用来跑分的工具是一个叫做 UnixBench 的程序,评分的逻辑类似于 Windows 平台上的 PCMark,讲求综合性能表现。在这套基准测试中,龙芯 3A5000 的单核成绩为1772,多核成绩为4453。所以这个得分算个什么水平呢?由于 UnixBench 只有在类 Unix 系统上才有,所以为了对比,我们还得再找一台电脑,装好 Linux 操作系统,再跑一遍测试,才能形成对比参照。结果不太凑巧的是,我在自己的库存里搜刮了一圈,只找到了台联想今年发布的 YOGA 笔记本是暂时没在用的,可以腾出来装 Linux 的。不过这个问题也不是很大,因为别看它是台笔记本,但它用的是最新一代的英特尔 i5 处理器。在之前的测试中,它的性能表现与台式机上面的 i7-7700k 处理器相当,相当于说我们完全可以把它看作是一台三年前的高性能游戏主机,这么着一个来回,参照的对象就有了。而在实际的 UnixBench 测试中,这台笔记本跑出了单核 2487,多核 4607 的成绩。换算一下就相当于说,对比三年前的高性能游戏台式机,龙芯这块 3A5000 处理器的多核性能基本持平,单核性能却弱了大概 30%。这个性能表现放到现在的消费级市场上,肯定算不得亮眼。虽然他跟三年前的 i7 差不多,但是当年的 i7 放到现在连英特尔最新的 i3 还不如,那 i3 跟 i9 处理器中间又差了多少个龙芯咱们大家又不是没点儿数,所以现在要说龙芯它跟 AMD、英特尔没什么差距,实在是有些捧杀它,言过其实了。 但要是换个角度想,作为一家比红蓝两大巨头晚入局了 20 多年的厂商,龙芯能在性能上追赶到只剩下三年左右,已经是在卯足了劲往前冲的,照这个劲头,那说不定哪天就一个爆发反杀了呢也说不定。所以纯就这个性能表现来说,虽然有不足,但我们对于龙芯也真的没有什么好指摘的。但是……纯粹的性能分数是一回事,实际用起来那就又是另外一回事了。
因为龙芯电脑……它好像什么都做不了啊。我们来重新捋一下,在龙芯的这个 Loongnix 系统里,大概有这么些个软件啊:一个用来上网的 “ 龙芯浏览器 ” —— 是基于谷歌 Chromium 浏览器项目修改而来的。有金山的 WPS Office —— 一个用来验证龙芯平台稳定性的非正式版本,只能试用 30 天;以及一些 GameBoy 味道非常浓的 2D 街机游戏。。。而除了上面这些,以及系统自带的一些工具之外,在 Loongnix 上几乎什么可堪用的图形化程序都没有了:包括飞书、腾讯会议、QQ、Steam、GIMP、OBS 这些个已经有对应 Linux 版本的程序,在 Loongnix 的软件源中一个都搜不到,直接下载软件包安装则会提示安装失败,从源代码进行编译安装的话很多程序也会因为缺少各种各样的基础依赖而报错。那这个问题可就大了 —— 性能稍微差点也不是不能用,那么多打印店、小网吧的机器也不见得有多好,可你龙芯电脑上一个能用的程序都没有,这不就是金玉其外、败絮其中的废铁疙瘩嘛。可能有些折腾过 Linux 的小伙伴要说了,Loongnix 里面的软件少,你不会把系统换装成软件更丰富的 Arch Linux 或者深度 Linux 吗?或者你直接拿个 Win 7、Win 10 的安装 U 盘往机器上一怼把机器重装成微软 Windows,不就 P 事都没有了吗?
啧啧啧 —— 想法很美好,但是……不行!
为什么不行呢?因为龙芯这个问题已经超脱软件的范畴了,它的根源在于,龙芯处理器有别于英特尔、AMD,使用的是一套龙芯自研的指令集架构:LoongArch,使得几乎没有任何主流的生态、程序和操作系统平台能够直接在龙芯处理器上运行。这个处理器的指令集架构啊,就好比是咱们人类语言里的那个语种,英特尔 1978 年开始生产 x86 指令集架构的处理器,后来还把 AMD 和微软都拉上了车,三家一起从硬件、操作系统两个方向发力,把 x86 指令集做成了桌面市场上的绝对垄断。英特尔几十年前的这波操作就好比是大航海时代英国在全球范围内的攻城略地,在全球插满了它的殖民地,把英语变成了全球通用的语言,后来的人要想参与到国际交流中,就必须得说英语。同样的,在现在的计算机世界中,x86 就是这个通行的 “ 英语 ”,你不论是写程序、写操作系统还是写编译器,都需要首先基于 x86 指令集架构,以它的思路和规范进行开发。结果就在十几年之后,龙芯来了。作为一个后来者,龙芯要想入局最简单的办法那肯定就是和英特尔说一样的语言,开发 x86 架构的处理器,这样的话也能保证目前世界上的大部分程序都可以在龙芯上直接运行。但是美国的英特尔可以把 x86 架构开放给一家美国企业,但却绝对不可能把它授权给一个中国的企业 —— 尤其是一个有国家科研院所背景的企业。于是龙芯只能一切自己做:所以它先是收购了 MIPS 公司的指令集技术,然后在 MIPS 指令集的基础上打磨出来了一个名叫 LoongISA 的指令集,这就是龙芯前几年一直在干的事。然后在获得了打磨 MIPS 指令集的经验和技术积累之后,龙芯才终于在去年推出了全新的 LoongArch 指令集架构,脱胎换骨。就在几个月之前,LoongArch 的中断模型被正式批准纳入 ACPI 国际规范,相当于在此之后,纳入了 ACPI 规范的指令集架构变成了三个:一个是 x86,来自美国的英特尔,一个是 ARM,来自英国的安谋控股,另外一个就是 LoongArch,来自中国,中科院,龙芯。到了这一步,其实就意味着,自研架构,龙芯做成了,这 20 年来的成果不是空气。但是这也意味着龙芯失去了在我们普通用户接触最多的台式机、笔记本这种 “ 桌面平台 ” 与国际厂商竞争的能力,因为它没应用啊。这个事其实我在三个月前跟大家聊鸿蒙的时候咱们就讨论过,当时鸿蒙遇到的就是这么个鸡生蛋、蛋生鸡的问题:一个新的平台要想起来,需要有丰富的软件生态;可相对地,只有用户数达到一定规模的成熟的平台才会吸引开发者来,为它开发足够丰富的程序。鸿蒙当时的开局没有我们想象中的那么艰难,一个是因为华为本身就有着数千万的存量用户,使得鸿蒙手机版发布的第一周就有了 3000 万的用户打底。另外一个就是因为它虽然表面上换了个操作系统,可它底层针对的处理器的目标架构没有变,依旧和以前安卓时代一样,是 ARM 架构的处理器。这就相当于说虽然换了个说话的方式、换了个口音,但是根本的语系是没有变的,所以它依旧可以很方便地移植、复用安卓的环境,兼容安卓的应用,坐享安卓这么多年的数以百万计的 App 成果,然后再慢慢吸引开发者开发专属于鸿蒙系统的应用,完成生态的过渡。
但是龙芯不行,因为它在根儿上说的语言就和国际通行的 x86 语言不一样,不会有任何一款程序、任何一个操作系统去原生地支持它。而龙芯在消费市场的占有率又无限接近于 0,导致商业开发者耕耘龙芯平台的意愿也无限趋近于 0 ……就这么说吧,微信从发布到现在已经过去十年时间了,可它连个正经 x86 架构的 Linux 版本都懒得开发 —— 这可还是有一定市场占有率、基于 x86 架构的平台呢。所以你指望在不动用行政手段干预的情况下,让腾讯专门给龙芯 LoongArch 上一个微信专版?而这样一个在中国每天有 10 亿人在用的国民级工具都这么懒,其他商业公司针对龙芯平台开发商业软件的动力,你们觉得又会有多大呢?现在的龙芯,有产品,有不算太拉跨的性能,但就是没有主流的软件生态,虽然社区里有用爱发电的爱好者,有信创行业的兄弟公司,但是他们的作用对于推广龙芯都太局限了。所以这 20 年来,龙芯的命运和其他一些个不怎么出名的微处理器厂商一样,一直存活在超市里面的收银机、街道上的信号控制灯、停车场里的计费终端、以及小区门口的门禁系统之中……龙芯,这么个曾经被寄以希望打破外国市场垄断的产品,被困在了无数个铁盒子之中。
作为一款国产自研的处理器,龙芯,很棒;可与此同时,后发所致的劣势,生态上的极度不完善,也导致龙芯离我们亿万普通人的距离,也还很远 —— 但是,二进制转译技术,让龙芯看到了希望。2017 年,微软联合高通发布了一款使用骁龙 835 处理器的便携笔记本概念机,为了能够让以往 Windows 上海量的 x86 程序顺利在高通的 ARM 指令集架构处理器上运行,微软联合高通研制了一个 “ 转译器 ”,能够实时地将程序的 x86 指令转译成 ARM 指令在处理器上运行,而不需要程序本身做出任何改动。在这个技术的帮助下,一台使用高通 ARM 处理器的笔记本电脑成功运行起了桌面 x86 版本的 Adobe Photoshop 软件。之后,苹果把这个创意给发扬了光大 —— 今年发布的 Mac 线电脑,处理器全都从 x86 架构的英特尔换成了苹果自研的 M1 ARM 处理器,为了解决程序生态的问题,苹果也做了一个名叫 Rosetta 2 的指令翻译器,实现了对传统 x86 架构程序的支持。
从目前大家对 M1 MacBook 的反馈来看,苹果的这个技术实践显然是成功了。所以就在今年早些时候,龙芯也公布了自家的指令转译器项目,按照龙芯的说法,未来 LoongArch 架构的处理器可以以不低于 70% 的效率转译原本为 Windows 平台开发的 x86 程序,以不低于 90% 的效率转译原本为 Android 平台开发的 ARM 程序。假如一切顺利的话,龙芯会在五年的时间内解决跨平台的程序运行与指令转译问题,到时候龙芯也可以像现在的鸿蒙一样,享受到跨平台的生态红利,进而吸引用户,从而创造出属于自己的生态。
这一步,也许是对于目前的龙芯来说最难的一步。可但凡这事要是能搞成,龙芯也将终于能打破指令集不同的紧箍咒,堂堂正正地拥有了和英特尔、 AMD 这两个老大哥在消费级市场上掰手腕的能力。假如你对龙芯有什么想法或者看法,欢迎在评论区与大家讨论。新闻来源:电子工程世界,文中所述为作者独立观点,不代表icspec立场。更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj。