谈谈DeepMind攻克50年数学难题-激光雷达-大芯片-动力电池
谈谈DeepMind攻克50年数学难题-激光雷达-大芯片-动力电池
参考文献链接
https://mp.weixin.qq.com/s/3Qcn5DXetd48ihlkj1uBtQ
https://mp.weixin.qq.com/s/WHBLDdlalDV4uM_cIhlhEw
https://mp.weixin.qq.com/s/3fCbS9uvTr0mNakryOTwVA
https://mp.weixin.qq.com/s/jqEcDRkUFAzhcpTQt5XgCw
DeepMind攻克50年数学难题!AlphaZero史上最快矩阵乘法算法登Nature封面
DeepMind碾压人类高手的AI围棋大师AlphaZero,下一个目标是数学算法!现已发现50年以来最快的矩阵乘法算法。
下围棋碾压人类的AlphaZero,开始搞数学算法了,先从矩阵乘法开始!
在昨天DeepMind团队发表在Nature上的论文中,介绍了 AlphaTensor,这是第一个用于为矩阵乘法等基本计算任务发现新颖、高效、正确算法的AI系统。
论文链接:https://www.nature.com/articles/s41586-022-05172-4.pdf AlphaTensor为一个 50 年来的悬而未决的数学问题找到了新答案:找到两个矩阵相乘的最快方法。 先看看这研究都说的啥。 提高基础计算算法的效率一直都是学界热点,因为它会影响大量计算的整体速度,从而对智能计算领域产生多米诺骨牌式的效应。 上一张图,来看看AlphaTensor有多「能干」。
图a,b为AlphaTensor发现的算法在GPU (a) 和 TPU (b)上的加速百分比表现,针对大小为 8,192 × 8,192的矩阵乘法进行了优化 矩阵乘法就是这样一项原始任务,从神经网络到科学计算程序,它都是不可或缺的部分。 然而,算法发现过程的自动化是复杂的,因为可能的算法空间是巨大的。 DeepMind这次发布了一种基于AlphaZero的深度强化学习方法,用于发现任意矩阵乘法的有效且可证明正确的算法。 这个算法空间包含标准矩阵乘法算法和递归算法。 DeepMind将矩阵乘法算法发现过程(即张量分解问题)制定为一个单人游戏——TensorGame。
AlphaTensor 建立在 AlphaZero 之上,训练了一个神经网络来指导规划过程,以搜索有效的矩阵乘法算法。
我们的框架使用单个智能体来分解各种大小的矩阵乘法张量,从而产生跨各种张量的学习分解技术的转移。为了解决游戏的挑战性,AlphaTensor 使用专门的神经网络架构,利用问题的对称性并利用合成训练游戏。 AlphaTensor可扩展到比人工或组合搜索所能达到的算法空间大得多的算法空间。 事实上,AlphaTensor 从零开始发现了许多可证明正确的矩阵乘法算法,这些算法在标量乘法的数量方面改进了现有算法。 结果表明,AlphaTensor发现的算法在许多矩阵规模上都优于最先进的方法。
从围棋到矩阵乘法:AlphaZero「出圈」
矩阵乘法,学过线性代数的都熟悉,作为矩阵变换的基础运算之一,矩阵乘法是线性代数的基础工具,不仅在数学中有大量应用,在应用数学、物理学、工程学等领域也有广泛使用。
作为构成数学算法的基础运算之一,矩阵乘法的应用史长达数千年。 早在古埃及时代,人们就创造了一种无需乘法表的两个数字相乘的算法,希腊数学家欧几里德描述了一种计算最大公约数的算法,这种算法至今仍在使用。在伊斯兰黄金时代,波斯数学家Muhammad ibn Musa al-Khwarizmi设计了新的算法来解决线性和二次方程。事实上,al-Khwarizmi的名字被翻译成拉丁文为Algoritmi,这就是今天英文「算法」一词的前身。 但是,尽管今天人们对算法非常熟悉,但是,发现新算法的过程是非常困难的。 在我们今天发表在《自然》杂志上的论文中,我们介绍了AlphaTensor,这是第一个用于发现新的、高效的、可证明正确的矩阵乘法等基本任务算法的AI系统。这为数学领域一个长达50年的开放性问题——如何寻找两个矩阵相乘的最快方法——给出了答案。 这是DeepMind推动科学发展和利用AI解开最基本问题的又一次实践。AlphaTensor建立在AlphaZero的基础上,后者是一个在国际象棋、围棋和象棋等棋类游戏上表现超出人类的智能体,从下棋,到解决半个世纪以来的数学算法,AlphaZero是如何做到的?
打破矩阵乘法50年最快记录
矩阵乘法是代数中最简单的操作之一,通常在高中数学课上教授。但在课堂之外,这个不起眼的数学运算在当代数字世界有着巨大的影响力,在现代计算机中无处不在。
3*3矩阵相乘的计算 矩阵乘法被用于处理智能手机上的图像,识别语音命令,为计算机游戏生成图形,运行模拟以预测天气,压缩数据和视频以在互联网上共享等,应用极为广泛。 世界各地的公司花费了大量的时间和金钱来开发计算硬件,以有效地进行矩阵乘法。因此,即使是对矩阵乘法效率的微小改进也会产生广泛的影响。 几个世纪以来,数学家们认为,标准的矩阵乘法算法是人们在效率方面所能达到的最佳状态。
但在1969年,德国数学家Volken Strassen震惊了数学界,他表明确实存在更好的算法。
此前的矩阵乘法的标准算法与Strassen的算法相比,后者在乘2x2矩阵时少用了一个标量乘法(7次而不是8次)。就整体计算效率而言,乘法比加法重要得多。 通过研究非常小的矩阵(大小为2x2),他发现了一种巧妙的方法来组合矩阵的条目,从而产生一种更快的算法。尽管经过几十年的研究,这个问题的更大版本仍然没有得到解决--以至于人们不知道如何有效地将两个小到3x3的矩阵相乘。 在Nature的新论文中,我们探讨了现代人工智能技术如何推进新矩阵乘法算法的自动发现。AlphaTensor发现了在许多矩阵大小上比现有技术水平更有效的算法。我们的人工智能设计的算法优于人类设计的算法,这是在算法发现领域的一个重大进步。
AI推动算法发现的自动化
首先,我们将寻找矩阵乘法的有效算法问题转化为一个单人游戏。在这个游戏中,棋盘是一个三维张量(数字阵列),记录了当前算法离正确的程度。
通过一组与算法指令相对应的允许移动,玩家试图修改张量并将其条目清零。当玩家成功做到这一点时,对于任何一对矩阵来说,都会产生一个可证明正确的矩阵乘法算法,而其效率则由将张量清零所需的步骤数来体现。 这个游戏具有令人难以置信的挑战性--要考虑的可能算法的数量远远大于宇宙中的原子数量,即使是对于矩阵乘法的小案例。与几十年来一直是人工智能挑战的围棋游戏相比,我们的游戏每一步可能的动作数量要大30个数量级。 从本质上讲,要玩好这个游戏,相当于要在「巨大的干草堆中找出最小的那根针」。 为了应对这个明显不同于传统游戏的领域的挑战,我们开发了多个关键组件,包括一个新的神经网络架构,其中包括特定问题的归纳偏见,一个生成有用的合成数据的程序,以及一个利用问题的对称性的配方。 然后,我们利用强化学习训练了一个AlphaTensor智能体来玩一个单人游戏(Tensor Game),开始时没有任何关于现有矩阵乘法算法的知识。
AlphaTensor在TensorGame中的目标则是在有限因子空间内找到张量分解 (Tensor Decomposition)。 在介绍张量分解之前,我们可能需要先简单地了解一下张量是什么,然后再考虑张量分解有什么用途。 从初中到大学,我们接触最多的可能只是标量(scalar)、向量(vector)和矩阵(matrix),而张量则不那么常见,但实际上,标量是第0阶张量,向量是第1阶张量,矩阵是第2阶张量,第3阶或阶数更高的张量被称为高阶张量(higher-order tensor),一般提到的张量都是特指高阶张量。
我们也知道,在一个矩阵中,某一元素的位置可以说成“第几行第几列”的形式,要表达某一元素的位置需要两个索引构成的组合 ,类似地,在一个第3阶张量里面,表达某一元素的位置需要三个索引构成的组合 。 在处理稀疏矩阵和稀疏张量时,用索引来标记元素的位置会带来很多便利。另外,阶数的张量可以理解为矩阵的维泛化,在这里,阶数其实就是空间维度(spatial dimension),张量可以被视为多维数组。 张量分解从本质上来说是矩阵分解的高阶泛化。 对矩阵分解有所了解的读者可能知道,矩阵分解有三个很明显的用途,即降维处理、缺失数据填补和隐性关系挖掘,而张量分解也能够很好地满足这些用途。 为了解决TensorGame并找到有效的矩阵乘法算法,我们开发了一个DRL智能体AlphaTensor。 通过学习,AlphaTensor随着时间的推移逐渐改进,重新发现了历史上的快速矩阵乘法算法,如Strassen的算法,最终超越了人类的直觉领域,发现的算法比以前已知的更快。
由AlphaTensor玩的单人游戏,目标是找到一个正确的矩阵乘法算法。游戏的状态是一个由数字组成的立方体数组(显示为灰色为0,蓝色为1,绿色为-1),代表着要做的剩余工作。 例如,如果学校里教的传统算法是用100次乘法对一个4x5乘以5x5的矩阵进行乘法,而这个数字在人类的聪明才智下被减少到80次,AlphaTensor已经找到了只用76次乘法就能完成同样操作的算法。
除此之外,AlphaTensor的算法自50年前发现以来,首次在有限域中改进了Strassen的两级算法。这些小矩阵的乘法算法可以作为基元来乘以任意大小的大得多的矩阵。 此外,AlphaTensor还发现了一组具有最先进复杂度的多样化算法--每种大小的矩阵乘法算法多达数千种,表明矩阵乘法算法的空间比以前想象的要丰富。 在这个丰富的空间中的算法具有不同的数学和实践属性。利用这种多样性,我们对AlphaTensor进行了调整,以专门寻找在特定硬件上速度快的算法,如Nvidia V100 GPU,和谷歌TPU v2。 这些算法在相同的硬件上比常用的算法快10-20%,这展示了AlphaTensor在优化任意目标上的灵活性。
AlphaTensor的目标是对应于算法的运行时间。当发现一个正确的矩阵乘法算法时,会在目标硬件上进行基准测试,然后反馈给AlphaTensor,以便在目标硬件上学习更有效的算法。
未来的研究和应用
从数学的角度来看,我们的结果可以指导复杂性理论的进一步研究,其目的是确定解决计算问题的最快算法。
通过以比以前的方法更有效的方式探索可能的算法空间,AlphaTensor有助于推进我们对矩阵乘法算法的丰富性的理解。了解这个空间可能会释放出新的结果,帮助确定矩阵乘法的渐进复杂性,这是计算机科学中最基本的开放问题之一。 因为矩阵乘法是许多计算任务的核心组成部分,涵盖了计算机图形、数字通信、神经网络训练和科学计算,AlphaTensor发现的算法可以使这些领域的计算效率大大提升。
图为AlphaTensor网络架构 AlphaTensor在考虑任何类型的目标方面的灵活性也可以刺激新的应用,以设计优化能源使用和数值稳定性等指标的算法,帮助防止小的四舍五入错误随着算法的工作而滚雪球。 虽然我们在这里集中讨论了矩阵乘法这一特殊问题,但我们希望我们的论文能够启发其他人使用人工智能来指导其他基本计算任务的算法发现。 我们的研究还表明,AlphaZero是一个强大的算法,可以远远超出传统游戏的领域,帮助解决数学中的开放问题。 在我们的研究基础上,我们希望能够推动更多的工作--应用人工智能来帮助社会解决数学和整个科学领域的一些最重要的挑战。
一激光雷达公司宣布破产
近日,德国激光雷达公司Ibeo Automotive Systems GmbH因无法获得进一步的融资,正式对外宣布申请破产。目前,汉堡破产法院已批准由Ibeo自行管理的破产程序。在自我管理期间,Ibeo管理层仍全面负责运营,审查重组方案并领导寻找投资者。
Ibeo是全球汽车级激光雷达的鼻祖,成立于1998年,发展至今,已在德国汉堡、荷兰埃因霍温和美国底特律设有运营部门或工厂,全球范围雇佣了400多名员工。2010年,Ibeo与汽车零部件巨头法雷奥达成合作,共同开发汽车级激光雷达。7年后,法雷奥第一代汽车级激光雷达ScaLa实现批量“上车”奥迪系列车型。2019年,Ibeo与长城汽车达成合作。2021年,瑞声科技(常州)成为Ibeo的新晋股东。Ibeo的发展之路至此可谓一帆风顺。
但一项技术从诞生到普及,伴随着不断的试错和改进,需要经历技术路线之争、工程量产、工艺迭代等一系列过程。目前,FMCW和TOF究竟哪个才是车规级激光雷达技术路线最终解虽未确定,但越来越多的公司,特别是近几年新成立的公司,更多的选择走FMCW这条路线,资本也更加青睐FMCW激光雷达公司。Ibeo是固态TOF的代表公司,其重要股东采埃孚曾被爆出考虑出售所持Ibeo的40%股份,而另一边,采埃孚官方透露和FMCW激光雷达技术代表公司Aeva达成合作。资本已先一步做出了选择。
大芯片面临的共同挑战
最近一直思考:何谓“大芯片”?大芯片的标准是什么?CPU、GPU、AI、DPU以及HPU等各种超大规模的大芯片,其底层逻辑到底是什么?
于是有了这篇文章的思考,抛砖引玉,与大家讨论。1 什么是大芯片?
1.1 依据操作系统标准来划分
这样,我们对大芯片就可以有一个最直观的标准:
- 需要支持操作系统和虚拟化(虚拟化包括虚机、容器、函数等不同层次虚拟化);
- 需要支持虚拟化资源切分;
- 需要支持系统、资源和性能隔离;
- 需要支持软件跨硬件平台,包括硬件接口抽象和热迁移等。
大芯片,需要把很多传统软件层次的能力在硬件层次进行支持。如可编程性、扩展性、适应性、软件跨平台和高可用等。
1.2 各类引擎/处理器的作用
上图是在计算机(服务器)上运行的系统的功能层次划分,大体上分为两个层次:
- 支撑应用的基础设施层,比如网络、存储、虚拟化、文件系统、数据库等;
- 应用层。应用层也可以再划分。很多应用性能敏感,需要通过硬件加速。因此,可以把应用再划分为两部分:
- 应用可加速部分,相比基础设施,应用可加速部分的更新变化会更大,因此需要一些相对灵活弹性的加速平台,如GPU、FPGA等,而ASIC等则不是很合适。
- 应用不可加速部分,应用多种多样,应用本身还会经常性的优化更新,因此只适合CPU这样的足够通用灵活的运行平台。
CPU
如果整个系统对性能的要求不高,CPU可以胜任。那么最好的做法就是,不管是基础设施层还是应用层可加速部分和不可加速部分,统统都放在CPU中完成。
然而,由于基于CPU的摩尔定律失效,CPU逐渐无法胜任系统的所有计算任务,引发了连锁反应。所以才有了上面图中的三个分类,以及针对性的各种硬件加速平台。
不管如何优化改进,CPU作为最核心的处理引擎(可能是独立CPU芯片,也可能是嵌入式CPU Core),依然扮演着最核心的作用。
未来,CPU主要负责应用层不可加速部分的计算以及整个系统的控制和管理。虽然CPU最终不是计算的主力,但它依然是管理和控制的核心。
GPU
GPU比较适合应用层的弹性加速,一方面因为GPGPU的通用计算能力,在场景覆盖和性能提升方面很好的达到了平衡。再加上CUDA等开发框架/生态的加持,使得GPU成为应用层可加速部分当之无愧的主力运行平台。
DPU
DPU定位基础设施层的(加速)处理,如虚拟化、网络、存储、安全以及IaaS服务融入等。DPU需要很多ASIC/DSA层次的加速引擎,以及嵌入式CPU的协同,来更好的做好基础设施层的工作,以此来更好的支撑CPU和GPU的上层工作。
DPU可以说是整个系统中的“老黄牛”,做的是最辛苦最艰难的事情,但其价值体现却低于CPU和GPU。目前DPU面临的困境主要体现在:
- 做的事情非常复杂。受性能需求的约束,需要把业务逻辑变成电路,DPU的开发其难度和工作量(相比CPU和GPU)非常的高。
- 其价值又相对较低。DPU通常定位成CPU的助手,负责卸载CPU的一些繁重的相对价值含量低的工作。因此,其价值定位低于CPU和GPU。
- 被动协同。DPU需要协同CPU和GPU的工作,但这些协同通常是被动的。DPU具体落地需要CPU和GPU的“参与”,这使得DPU具有非常大的落地门槛。
- 客户需求差异性和业务迭代,需要DPU尽可能的贴近用户需求,把用户的深层次需求融入到芯片。但这样做,会导致场景碎片化,DPU能覆盖的场景偏小。而大芯片的研发成本又非常的高,场景覆盖不足以撑起一颗芯片的商业化落地。
AI芯片
AI芯片,也称为AI-DSA,和GPU处于同一位置,一般来说,在小小的服务器物理空间里,加速卡通常只有一种类型,也即AI和GPU是互斥的关系,大家共同竞争同一个物理卡槽。
CPU+xPU的异构计算通常分为三类:
- CPU+GPU、CPU+FPGA和CPU+DSA。
- 如果对通用性要求高,对覆盖场景要求高,则通常选择GPU。比如AI训练场景,虽然GPU并不是效率最高的平台,但目前AI训练算法更新迭代很快,比较适合GPU这样的平台,而不是AI-DSA。
- 如果对性能要求高,并且算法相对确定,则比较适合DSA架构,比如一些编解码的VPU。以及AI推理场景。
- FPGA则介于两者之间。
AI-DSA虽然用途很广,并且性能敏感,但云、边缘以及自动驾驶等超级终端场景,是更加综合性的场景,AI是计算加速的领域之一,因此,独立的AI芯片其落地规模必然是远少于GPU这种更加灵活弹性的计算平台的,也更少于CPU和DPU的落地场景规模。
HPU
HPU是超异构处理器(Hyper-heterogeneous Processing Unit),把CPU、GPU和DPU的功能再集成在一起,是一个功能综合的融合芯片:
- Chiplet封装技术的成熟,使得多种架构混合的超异构计算成为可能,为超异构处理器HPU提供了很好的工艺和封装基础。
- 包括企业服务器、边缘服务器以及存储服务器等诸多场景,占到整个服务器规模的90%左右,这类服务器场景相对轻量的计算,集成的单芯片足够。
- 而云计算的业务服务器,是绝对重量的场景,需要CPU、GPU和DPU三类独立芯片组成大系统。这类场景只占服务器规模的10%左右。
超异构计算需要创新的架构:需要明确的是,HPU不能是简单的CPU、GPU和DPU三者集成,而是要重新优化整个系统的数据交互,让交互更加充分并且高效(更高的带宽,更低的延迟等)。
2 大芯片的底层逻辑
2.1 各种各样的领域和场景,本质都是计算
云计算IaaS层有基础的四大类服务:
- 首先是计算。这里的计算是狭义的计算,通常指的是我们提供给用户的计算环境或平台,而网络、存储安全等则是用户不可见的计算。
- 一个个的计算机通过网络连接在一起的大系统,计算的节点是计算机(或服务器),网络的节点也是计算机。计算和网络,通常是界限分明的。但各自走向瓶颈之后发现,可以通过计算的方式解决网络的问题(许多网络设备和系统在逐渐云化);计算,也越来越多的需要网络设备的参与,网络设备也成为计算集群的一部分。
- 在万物互联的大系统里,存储,其实都可以看做是临时并持久的存储。比方说内存(memory),在计算机某个任务运行的时候它的内存数据和程序是持久的,当关机的时候它又是临时的角色。也包括本地存储(local Storage),他在服务器上来说是持久的,但在跟整个数据中心分布式存储来说,他又是本地的暂存。存储,是计算的输入、输出,以及中间结果的暂存。
- 安全,贯穿计算、网络、存储的方方面面,可以认为,安全是一个环境和机制,在约束着计算、网络和存储的方方面面。
- 而虚拟化,则是整个架构的组织方式,把这四大件的软硬件更好组织起来的方式,来灵活的、方便的为大家提供各种计算、网络、存储和安全服务。
以数据为中心,靠数据流动驱动计算:
- 但不能把数据为中心的计算封装到网络数据流中,因为计算依然需要暴露给用户,用户掌控一切;
- 以数据为中心的计算,依然要把数据流驱动的计算暴露给上层的用户应用,为了更好的性能,需要做到“软件定义一切,硬件加速一切”。
一切系统的运行都是以计算为基础的,系统的运行可以简单归结为输入、计算,然后输出。不管是狭义的计算,或者是虚拟化、网络、存储、安全等,都可以归结到广义计算的范畴。
一切皆计算(或一切皆为计算)!
2.2 宏观算力由性能、规模和利用率组成
宏观总算力 = 性能 x 数量(规模) x 利用率。
算力是由性能、规模、利用率三部分共同组成的,相辅相成,缺一不可:
- 有的算力芯片,可能可以做到性能狂飙,但较少考虑芯片的通用性易用性,然后芯片销量不高落地规模小,那就无法做到宏观算力的真正提升。
- 有的算力提升方案,重在规模投入,摊大饼有一定作用,但不是解决未来算力需求数量级提升的根本。
- 有的解决方案,通过各种资源池化和跨不同的边界算力共享,来提升算力利用率,但改变不了目前算力芯片性能瓶颈的本质。
性能、规模、利用率,宏观微观,牵一发而动全身。管中窥豹终有偏,既要考虑多种因素协同设计,更要宏观的统筹算力问题。
2.3 核心矛盾:性能和灵活性
性能和灵活性是大芯片中最核心的矛盾:
- CPU灵活性很好但性能较差,在数据中心场景,如果性能满足,通常的服务器主力计算芯片,仍然是CPU。很不幸的是,CPU到了性能瓶颈。
- GPU,能够兼顾好性能和灵活性,在很多异构计算场景得到广泛应用。
- ASIC受限于其非常低的灵活性,在数据中心等复杂计算场景,完全不可用。
- DSA虽然灵活性相比ASIC有所提升,但仍然无法满足应用加速对灵活性的要求,例如AI训练场景,DSA落地就存在困境,这一场景目前还主要是GPU的天下。但DSA相比ASIC有所提升的灵活性,比较好满足一些基础设施层的算法加速,如网络DSA场景和一些AI推理场景。
CASH(软硬件融合架构),是我们定义的一种超异构计算架构,通过多种处理引擎混合协作,实现“团队作战,优势互补”,以此达到性能和灵活性的兼顾。
3 大芯片面临的共同挑战
3.1 挑战一:复杂大系统,对灵活性的要求高于对性能的要求
有一个非常经典的问题:终端非常流行SOC,但为什么数据中心服务器却依然是CPU打天下?
越是复杂的场景,对系统灵活性的要求越高。CPU作为云计算场景的主力计算平台有其合理性,主要体现在四个方面:
- 硬件的灵活性。软件应用迭代很快,支持软件运行的硬件处理引擎要能够很好地支持这些迭代。CPU因为其灵活的基础指令编程的特点,是最适合云计算的处理引擎。
- 硬件的通用性。云计算厂家购买硬件服务器,很难预测这些硬件服务器会运行哪类工作任务,最好的办法是采用完全通用的服务器。CPU由于其绝对的通用性,成为云计算场景最优的选择。
- 硬件的利用率。云计算的基础技术是虚拟化,通过虚拟化把资源切分,实现资源共享,以此提高资源利用并降低成本。只有CPU能够实现非常友好的硬件级别的虚拟化支持,从而实现更高的资源利用率。而其他硬件加速平台,(相对的)资源利用率很难做到很高,这就约束了其性能优势。
- 硬件的一致性。在云计算数据中心,软件和硬件是需要相互脱离的。同一个软件实体会在不同的硬件实体迁移,同样的同一个硬件实体也需要运行不同的软件实体。这对硬件平台的一致性提出了很高的要求。
在性能满足要求的情况下,CPU当仁不让的就成了数据中心计算平台的最佳选择。
可惜的是,目前,CPU的性能无法满足要求了。在CPU性能不满足要求的情况下,就需要创新的硬件来进行性能加速。如何在整个系统保持跟传统CPU接近的通用性、灵活性、可编程性、易用性的约束条件下,实现性能显著提升,成为了重要的挑战。
3.2 挑战二:如何数量级的提升综合性能?
我们之前都讲过,性能和单位指令的复杂度是正相关的。指令越简单,性能相对越低;指令越复杂,性能相对越好。但指令简单,我们就可以随心所欲组合各种各样的场景的应用程序;而指令越复杂,引擎所能覆盖的领域和场景就会越来越小。
如上图所示:
- CPU性能最差,但几乎可以覆盖所有的计算场景,是最通用的处理器;
- DSA覆盖某个特定领域,性能可以做到很好。但覆盖的领域如果算法更新迭代快或者领域的范围较小不足以支撑大算力芯片的大范围落地的话,这样的DSA芯片在商业上就很难成立。
- GPU介于两者之间。
CPU软件,是通过基础的指令组合出来所需要的业务逻辑;而为了提升性能,硬件加速本质上是将业务逻辑固化成硬件电路。而将业务逻辑固化成电路,虽然提升了性能,但会约束芯片本身的场景覆盖。目前,很多算力芯片的设计陷入了一个怪圈:越优化性能,场景覆盖越狭窄;场景覆盖越狭窄,芯片出货量越低;芯片出货量低,无法覆盖芯片的一次性研发成本,商业逻辑不成立,后续的持续研发难以为继。
以AI为典型场景,目前AI芯片落地难的本质:很多AI芯片特别强调深度理解算法,然后把算法融入到芯片中。但受限于AI类算法多种多样,并且算法都在快速的迭代。这导致AI芯片一直无法大规模落地,芯片数以亿计的研发成本难以摊薄。因此,从目前来看,AI芯片在商业逻辑上无法成立。
AI芯片已经榨干了目前芯片所能达到的性能极限;未来,L4/L5级别的自动驾驶芯片需要算力十倍百倍的提升;而要想达到元宇宙所需的良好体验,则需要算力千倍万倍的提升。如何在确保芯片的场景覆盖如CPU一样通用全面,并且还能够十倍百倍甚至千倍万倍的快速性能提升,是大算力芯片需要直面的挑战。
3.3 挑战三:业务的横向和纵向差异性
业务的横向差异指的是不同客户之间相近业务的细节差异性;而纵向差异指的是单个用户业务的长期迭代的差异性。
不同用户的业务存在差异,即使同一大公司内部,不同的团队对相同场景的业务需求也是不完全一致的。并且,即使同一客户,受限于软件的快速更新迭代,其业务逻辑更新也会很快,显著的快于硬件芯片的更新迭代(软件迭代通常在3-6个月,而芯片迭代则是2-3年,还要考虑芯片4-5年的生命周期)。
针对横向和纵向的差异性,目前行业有几种显著的做法:
- 一些芯片大厂,针对自身对场景的理解,提供自认为最优的业务逻辑加速方案给到用户。但站在用户的视角,这样会丧失自身的差异性和创造性。用户需要修改自身的业务逻辑,这个风险也非常的高;并且,会对芯片公司形成强依赖关系。
- 一些大客户。针对自身差异化场景,自研芯片。可以满足自身差异化的竞争能力,但大用户内部也是由许多不同的小团队组成,不同团队业务场景仍然存在差异性;并且,单个业务纵向的长期迭代差异依然是需要考虑的。定制芯片在商业上是可行的,但需要考虑技术层面的通用芯片设计。
- 第三方通用的解决方案。“授人以鱼,不如授人以渔”,通过通用的设计,确保在每个领域,都能够实现一定程度上的软硬件解耦。芯片公司提供“通用”的硬件平台,让用户通过编程的方式实现业务差异化,“让用户掌控一切”。
3.4 挑战四:芯片的一次性成本过高
在先进工艺的设计成本方面,知名半导体研究机构Semiengingeering统计了不同工艺下芯片所需费用(费用包括了):16nm节点则需要1亿美元;7nm节点需要2.97亿美元;到了5nm节点,费用高达5.42亿美元;3nm节点的研发费用,预计将接近10亿美元。
就意味着,大芯片需要足够通用,足够大范围落地,才能在商业逻辑上成立。做一个基本的估算:在数据中心场景,则需要50万以上的销售量,才能有效摊薄研发成本。在数据中心领域,这个门槛非常高。
3.5 挑战五:宏观算力要求芯片能够支撑大规模部署
性能和灵活性是一对矛盾,很多性能优化的芯片设计方案,显著的提升性能的同时,也显著的降低了芯片的通用性、灵活性和易用性,同时降低了芯片的场景和用户覆盖。从而导致芯片落地规模很小。
芯片落地规模小,单芯片再高的性能,都相当于无源之水,没有了意义。
因此,一个综合性的芯片平台,需要考虑芯片性能提升的同时,也要考虑如何提高芯片的宏观规模落地:需要考虑芯片的场景覆盖;需要考虑芯片的用户覆盖;需要考虑芯片的功能横向和纵向的差异性覆盖。
只有兼顾了性能和更多用户和场景覆盖,才能实现大芯片的规模化部署,才能显著的提升宏观算力。
3.6 挑战六:计算平台的融合
算力需要池化,并且,算力不仅仅是数据中心基于x86 CPU的算力池化,算力池化,需要:
- 算力需要跨不同的CPU架构,比如能够把x86、ARM、RISCv等主流架构的算力整合到一个算力池;
- 算力需要跨不同类型的处理引擎。比如把CPU、GPU、FPGA、DSA的算力整合到一个算力池;
- 算力还需要跨不同厂家的硬件平台,算力需要把不同Vendor提供的算力资源都能够整合到一个算力池;
- 算力需要跨不同位置,算力可以部署云、边、端甚至网络,可以把这些算力整合到一个算力池。
云网边端融合,就是把所有的算力资源整合到一起,真正实现跨云网边端自适应的软件运行。挑战在于,如何构建统一的开放的硬件平台和系统堆栈。
3.7 挑战七:生态建设的门槛
大芯片一定需要平台化,一定需要开发框架并形成开发生态。而框架和生态门槛高,且需要长期积累,对小公司来说是一件非常难的事情。
RISC-v CPU已经如火如荼,很多公司,特别是一些初创小公司,大家都非常认可RISC-v的开源开放的理念和价值,众人拾柴火焰高,大家共同推动RISC-v开放生态的蓬勃发展。
未来,计算进一步走向异构和超异构计算,架构和平台越来越多,此时,开源开放已经不是可选项,而是成为必选项。因为,如果不是开源开放,那就会导致算力资源完全的碎片化,何谈算力池化,何谈云网边端融合。
开源开放,是大芯片平台和生态建设的必然选择。
3.8 挑战八:(用户视角)宏观跨平台的挑战,没有平台依赖
站在芯片厂家视角,给客户提供芯片以及配套的驱动软件,然后有SDK等开发工具包,用户基于此开发自己的应用程序,这样就万事大吉。但站在用户的视角,问题可不是这样。用户的软件应用和硬件平台是完全脱离的。
我们以VM计算机虚拟化为例。用户的VM需要在不同的硬件平台上能够实时热迁移,这样就对硬件平台的一致性就有了要求。通常,硬件一致性是通过虚拟化来完成的,虚拟化给上层的VM抽象出标准的硬件平台,使得VM可以跨不同架构的硬件服务器运行。随着CPU性能的瓶颈,虚拟化相关堆栈逐渐下沉到了硬件加速,这样,就需要把硬件接口直接暴露给业务VM,那么就需要硬件架构/接口原生支持一致性。
硬件架构/接口原生支持一致性,换个表述,就是不同厂家的芯片平台提供的是相同的架构和接口,使得软件可以方便的跨不同厂家的硬件平台迁移。如果某个厂家提供的是私有架构/接口的硬件平台,那么用户就会对平台形成强依赖关系,并且如果选择的个性化平台越多,使得用户自己的数据中心变成割裂的各自不同的资源池碎片,这样云的整个运营管理变得非常的复杂和困难。
动力电池卷起来!锂电巨头IPO近八成公开发售股份“无人问津”,首日盘中遭遇破发
新能源汽车销量持续增长,动力电池供应链却开始动荡不安,危机感时刻萦绕在动力电池企业心中,为巩固自身竞争力,动力电池行业,卷起来了。动力电池玩家们、诸多车企们纷纷踏入了这条烧钱研发“不归路”。
10月6日,中创新航在港交所正式上市,成为首家登陆港股的动力电池企业。公司股份代号 3931,每股发售价 38 港元,今日开盘股价持平,而后遭遇破发,收盘中创新航股价回涨至 38 港元,与开盘价持平,总市值 673 亿港元。
此前,中创新航曾经历三轮融资,中创新航吸引了多家头部财务投资人和战略投资人。2019年8月至2021年11月,公司完成数次增资,引入了红杉中国、广汽资本、小米长江产业基金等财务投资人和产业资本。其中红杉中国是中创新航早期财务投资人之一。按照2021年9月的战略融资,其估值已达600亿元。 10月5日,中创新航公布招股结果,公开发售认购倍数仅为0.21倍,一手中签率100%“人人有份”。发售价为每股38港元,为招股价范围(38.00至51.00港元)下限定价,每手100股,募资约101.02亿港元,经扣除全球发售应付的包销费用及佣金以及估计开支后,所得款项净额约98.64亿港元。华泰国际为其独家保荐人。
中创新航此次香港公开发售的股份仅占全球发售的2.658亿股的1%。换言之,其大部分新发股份都卖给了机构。中创新航获得了15家基石投资者青睐,认购股份达到1.49亿股,占此次IPO总股份56.17%。15名基石投资者中包括天齐锂业、盛屯矿业、大族激光、中伟股份、诺德股份、小鹏汽车、维沃移动(VIVO)、江门国资委、合肥长丰县政府等。
在盈利能力方面,招股书显示,在2019年至2021年间,中创新航的净利润分别为-1.56亿元、-0.18亿元、1.12亿元。2021年扭亏为盈,靠的是政府补助的3.66亿元。2019年至2021年,中创新航的毛利率仅为4.8%、13.6%、5.5%,而宁德时代则分别高达29.06%、27.76%、26.28%。
参考文献链接
https://mp.weixin.qq.com/s/3Qcn5DXetd48ihlkj1uBtQ
https://mp.weixin.qq.com/s/WHBLDdlalDV4uM_cIhlhEw
https://mp.weixin.qq.com/s/3fCbS9uvTr0mNakryOTwVA
https://mp.weixin.qq.com/s/jqEcDRkUFAzhcpTQt5XgCw