与Mark Himelstein讨论开放ISA的未来与挑战。
在全球半导体短缺与贸易战的双重压力之下,Arm与x86两大架构阵营所代表的芯片技术正受到高度关注。但就在这股洪流之下,开源RISC-V芯片架构正悄然发展成第三种完全可行的架构方案,更便宜、更灵活而且不受政治立场的左右。
RISC-V常被称为芯片界的Linux,强调工程师群体合作设计、设置并改进架构方案。RISC-V International为此制定了规范,以免费许可的方式供芯片设计师们在自认为适合的处理器及片上系统中随意使用。
目前,中国和欧洲正逐步将本土芯片研发向着RISC-V的道路转移,希望借此实现芯片自主。众多企业也在考虑利用RISC-V架构降低由Arm及x86带来的高昂许可及版税成本。
可以肯定的是,RISC-V要想在PC、服务器和手机端全面替代x86和Arm,还需要付出多年的不懈努力。但目前RISC-V架构在微控制器和FPGA领域已经迎来良好开端,搭载RISC-V芯片的单片计算机也已经面世。此外,它还得到谷歌、苹果、亚马逊、英特尔、高通、三星及英伟达等巨头级厂商的支持。
在此次采访中,我们将与RISC-V Intenational CTO Mark Himelstein共议RISC-V的发展之路与未来挑战。
***
RISC-V目前进展如何?
在RISC-V出现之前,现有架构一直束缚着用户的应用空间。RISC-V的最大亮点就是免费且灵活,无需任何额外成本就能让设计师们完成定制。我们充分发挥技术社区的特有优势,打破了企业壁垒、国家壁垒、文化壁垒甚至是时区壁垒,始终将分享精神作为指引自身前进的最高理念。
用户也可以在我们许可的非标准扩展领域推动更多创新,这是种真正双赢的宝贵合作关系。
作为开源芯片项目,RISC-V面临着哪些挑战?
这类项目不会像Arm或者x86那样统一且有序。我之前曾在Sun公司参与过Solaris项目,也运营过其他大型组织。在这类企业里,你只需要告诉人们该做什么就行。你先定下一个目标,然后大家朝着这个方向共同前进。但在RISC-V这边,我们得花不少力气引导一定比例的成员协同行动,只有这样才能保证项目发展不致出偏。
我们为此引入了两个概念,其一是profile,其二就是通用平台。二者的核心目标就是缓解碎片化问题。Profile是一组协同工作指令,类似于大家在其他架构中看到的迭代规划。在它的指引下,我们得以向编译器和优化器等上游项目乃至各类发行版传递提醒,“嘿,接下来的工作要以2022年发布的profile为基准,确保各项工作协同一致。”我们也在操作系统层面做出了同样的尝试,包括与平台相关的discovery、ACPI、SPI等等。
我们还面对着一大堆单独的扩展,用户可以用、也可以不用。我们不会做硬性区分和要求,不会像其他传统架构那样强调“在本轮迭代中,这些要素要协同运行;在下轮迭代中,那些操作系统组件必须协同运行”之类。这一理念在2021年初步诞生,成效也确实令人兴奋。虽然还没有最终完成,但这确实帮助我们回避了重复工作、尽可能提升分享能力并保证社区不致自我割裂。
我们也一直在学习如何将贡献者文化渗透到指令集架构中的各个角落,毕竟只有一部分架构师能够接触到ISA的具体定义工作。这项工作的重点在于培育软件生态系统,我们需要确保编译器、库、操作系统都能与芯片设计匹配起来,在这方面我们仍在摸索当中。
RISC-V接下来将向何处去?
我们的待办事务清单已经很臃肿了,接下来需要先做精简。我们的首要目标就是为下一代产品奠定基础。例如,我们的AI-ML特殊兴趣小组和图形特殊兴趣小组都对高级矩阵运算很感兴趣,相关开发工作预计会在2022年内启动。如今越来越多的工作负载开始脱离核心架构、转向加速器,这种趋势也会在下一代RISC-V架构中得到体现。
谷歌刚刚成为我们的高级会员,亚马逊正在着力打造Greengrass,其他参与者还包括希捷、西部数据、英伟达、华为、阿里巴巴等等。RISC-V正在真实生产环境中发挥愈发重要的作用,2021年全年已经有数亿个基于RISC-V的内核正在奋力运行。
您打算探索GPU领域吗?目前Linux系统对游戏软件的支持性越来越好了,很多朋友肯定期待能在RISC-V架构上玩到更多游戏。
我们其实不一定要追求GPU,我们关注的永远是工作负载。社区内的成员们的想法也是一样,“我们先要弄清楚怎样在RISC-V上成功实现图形计算,优先解决种种实际工作负载需求。”图形及其他特殊兴趣小组的成员们觉得着色是最重要的,而着色效果源自矩阵运算。与此同时,ML兴趣小组发现机器学习负载同样需要矩阵运算。如此一来,我们就把这两类需求整合起来,着力解决矩阵运算问题。
RISC-V与OpenSPARC或者OpenPower等其他开源芯片项目有什么区别?
如果那些项目背后的赞助企业消失了,项目本身也会消失。换句话说,那些项目无法独力生存。
其实从Linux身上就能看到这种区别,当时也出现了很多其他开源操作系统。Linux为什么能笑到最后?Linus Torvalds本人的贡献当然功不可没,但同样重要的是人们觉得自己对Linux也有掌握权。他们不是被迫接受Linux,而是自主拥有Linux。RISC-V的情况也是一样,大家会觉得自己在RISC-V社区中有归属感,一切努力都将转化为RISC-V的前进动力。
您有没有在RISC-V上支持Windows的打算?Android呢?
我跟微软的人聊过,他们还没考虑过这个问题。但微软已经在Linux基金会的很多项目中有所建树,而我们暂时也只打算专心提升自己的工程技术能力。Windows未来会登陆RISC-V吗?当然有可能。但短期之内有戏吗?恐怕没戏。
仍然以Linux为例,类似的功能还是要靠Zephyr、FreeRTOS、Alpine等变体来实现,这种实现的难度也更低。开源世界就是这么奇妙,因为各个项目采用的是一套工具链,所以相互移植并不困难。我们在结构设计上已经为未来的Windows支持做好了准备,但到底支不支持还是要看社区的总体需求。社区需要什么,我们就把资金和时间投向哪里。
Android 10已经受到支持了,RISC-V成员们目前正在努力兼容Android 12。但无论如何,谷歌的主要盈利点在于Google Play商店;只要手机制造商还没有迈出这一步,RISC-V就永远会因为盈利能力的缺失而成为二等公民。这很正常,我们非常理解。谷歌现在已经成为RISC-V社区的高级会员,我们也就Android问题开展过讨论,可以说整个生态系统的建立只是时间问题。
越来越多的非半导体行业,例如汽车行业,正在努力建立芯片自主研发能力。您觉得RISC-V在这里有生存空间吗?
我觉得这种玩票性质的尝试造不出好芯片。只是说越来越多的厂商开始与RISC-V IP提供商合作,由SiFive或者Andes这样的企业为他们提供一些设计方案或者易于重现的FPGA IP成果。EDA工具也有复兴的迹象,使得利用RISC-V处理器打造FPGA或者其他一些专用型定制化芯片变得不那么难以上手了。但也只是门槛降低,专业芯片设计工作仍然要交给专业企业来做。
不少朋友对RISC-V很感兴趣,但拿不到芯片样品。
我觉得最好把问题明确一下。有些人确实需要真正可用的硬件来开发自有系统或者芯片,这一类属于实验性质的需求。从这个角度看,2021年可以算是RISC-V发展历程中的重大转折点,我们一举推出了六、七种开发板。我们还启动了种子计划,努力在2022年6月之前向更多学者、早期采用者和系统发行版提供1000块RISC-V开发板。
对于其他应用性质的需求,我们在RISC-V网站上开通了RISC-V交易所,任何人都可以使用其中发布的芯片、SOC、开发板和软件服务。
RISC-V的关注重点在于削减成本。您是不是一直在努力压低RISC-V芯片的制造成本?
我们之前讨论的是开发板,这个问题说的是芯片。我们一直在努力扩大RISC-V交易所的参与度,也一直在招聘人才。现在RISC-V距离理想的人才储备还有一段距离,但首先现有团队已经达到了一定规模,而且我们也将继续吸引人才、增加人手。RISC-V交易所的影响力也越来越大,所以相信大家已经能够从中找到不少能真正解决实际需求的内容。
那您觉得RISC-V芯片能不能在成本层面压倒x86和Arm?
从成本的角度来看,无论选择哪种架构,芯片的最终成品都是要花钱的。这是一个基本事实,我们以x86为例,我们就需要向英特尔支付芯片的设计成本加上制造成本。
但也有一些供应商不负责实际制造,他们直接出售芯片设计方案,再帮助客户联系能够生产的晶圆代工厂,具体制造价格由我们跟代工厂具体协商。这也是个基本事实,同样跟架构无关。
所以我没法断言“Arm、RISC-V和x86到底谁的最终成本更低”,这个问题太复杂了。
但我觉得答案也许仍然在Linux身上。Linux的发布成本是不是比AIX更低?这个成本是怎么算出来的?我觉得Linux能够广受好评,依靠的其实是与成本无关的其他特质,或者说是让用户们始终拥有一种“尽在掌握”的从容感。这种从容感会影响产品甚至整个行业。我觉得RISC-V走的也是这样一条发展路线。
好文章,需要你的鼓励
临近年底,苹果公布了2024年App Store热门应用和游戏榜单,Temu再次成为美国下载量最多的免费应用。
云基础设施市场现在已经非常庞大,很难再有大的变化。但是,因为人们可以轻松地关闭服务器、存储和网络——就像开启它们那样,预测全球云基础设施开支可能非常困难。