河套 IT TALK 89:(原创)算力引爆智能时代:解锁无限潜能
前文我们聊到了人工智能大模型的关键之一数据,今天,我们再聊聊另外一个关键点——算力。
1. 海量的算力市场空间
早在1961年,计算机科学家和人工智能先驱约翰·麦卡锡 (John McCarthy)就在麻省理工学院百年庆典上的演讲上讲过:“如果我提倡的那种计算机成为未来的计算机,那么计算可能有一天会被组织成一种公共事业,就像电话系统是一种公共事业一样……计算机事业可能成为一个新的重要行业的基础。”。不得不承认,这种观点在当时是非常先进和前瞻性的。经过IT行业和通信行业辛苦奋斗大半个世纪,如今,他的设想已经成为现实。在数字浪潮下,算力已经成为像水力、电力一样的公共基础资源,而数据中心和通信网络,已经成为重要的公共基础设施。随着数字化转型的加速和科技创新的蓬勃发展,对于处理大规模数据、进行复杂计算和实现人工智能的需求日益增长。在当今信息时代,算力俨然成为了推动科技和社会发展的重要驱动力。
根据华为发布的《计算2030》的数据统计,全球数据量每年以指数级别增长,到2030年,人类将迎来YB数据时代。其中的”YB”代表着”Yottabyte”,是数据存储容量的一个极大单位,相当于2的80次方字节,或者1兆兆兆兆字节。YB数据时代代表了一个数据爆炸和数据价值的新时代,通用计算算力(FP32)将增长10倍,达到3.3 ZFLOPS。而AI智算算力(FP16),将增长500倍,达到105 ZFLOPS。 这里的Z代表”zetta”,是国际计量单位前缀之一,表示10^21的倍数。ZFLOPS表示的是每秒钟进行的浮点运算次数,具体为每秒钟进行的10^21次浮点运算。这是一个非常庞大的数值,用于衡量超级计算机或高性能计算集群的计算能力。
2. 什么是算力?
算力(Computing Power)是指计算机系统或设备处理数据和执行计算任务的能力。它衡量了计算机系统能够在单位时间内完成的计算操作的数量或速度。算力通常与计算速度、计算容量和计算效率等因素相关。
衡量算力需要一系列的指标:
MIPS(Million Instructions Per Second,每秒百万条指令数):
IPS(Instructions Per Second,每秒指令数)表示处理器每秒钟能够执行的指令数量。它衡量了处理器的指令执行能力,适用于通用计算任务。由于计算机性能的提升,现在普遍使用MIPS来衡量计算机或处理器每秒钟能够执行的百万条指令数量。
DMIPS(Dhrystone MIPS,德赫斯顿百万指令数):
DMIPS也是衡量计算机或处理器每秒钟能够执行的百万条指令数量,是一种常用的基准测试程序。但它是基于Dhrystone基准测试的结果。Dhrystone由Reinhold P. Weicker于1984年开发,旨在模拟实际应用中的整数计算工作负载。这也是和MIPS的关键差别。DMIPS对整数运算的重要性更为突出,能够更好地评估处理器在整数计算方面的性能。而MIPS则更加通用,包括整数和浮点计算等不同类型的指令。因此,某些芯片在整数计算方面表现出色,可能在DMIPS上得分较高,但在包括浮点计算的MIPS测试中可能相对较低。
FLOPS(Floating Point Operations Per Second,每秒浮点运算次数):
OPS(Operations Per Second,每秒操作数)表示设备或系统每秒钟能够处理的操作数量。这个指标可以是通用计算任务的操作数,也可以是特定任务中的特定操作数,取决于具体的应用场景。FLOPS就是衡量设备或系统每秒钟能够执行的浮点运算次数。它是衡量计算设备在浮点计算方面的性能的指标,通常用于评估处理器、GPU、加速器等在科学计算、图形渲染、机器学习等需要大量浮点计算的应用中的计算能力。随着处理器浮点计算性能的提升我们从一开始的MFLOP(每秒百万浮点运算数),提升到GFLOP(每秒十亿浮点运算数)、TFLOP(每秒万亿浮点运算数)、PFLOP(每秒千万亿浮点运算数)、EFLOP(每秒百亿亿浮点运算数)和ZZFLOP(每秒十万亿亿浮点运算数)。
IOPS(Input/Output Operations Per Second,每秒输入/输出操作数):
IOPS是衡量存储设备或系统每秒钟可以处理的输入/输出操作数量。它通常用于衡量存储设备的读写能力,如硬盘、固态硬盘(SSD)等。
TDP(Thermal Design Power):
TDP是指在标准工作负载下芯片或处理器的最大热设计功耗。它表示芯片在设计中考虑的散热和冷却要求,是制造商提供的一个指导值。TDP通常以瓦特(W)为单位。
功率效率:
功耗效率是指芯片在执行特定任务时所消耗的能量与完成任务所需计算能力之间的比率。功耗效率通常以特定的计算能力单位(如FLOPS或IPS)为基准,表示为每瓦特(W)的计算能力或任务完成量。单位可以是FLOPS/W(每瓦特的浮点操作数)或IPS/W(每瓦特的指令数)。功耗效率越高,芯片在给定能源限制下能够提供更高的计算性能。
Rpeak(峰值性能):
Rpeak(Peak Performance)是衡量处理器或系统在理论上可以达到的最高性能水平。它通常以每秒钟可以执行的浮点运算次数(FLOPS)或整数运算次数(DMIPS)来表示。它反映了设备在理论上的最大计算能力,通常是在理想化的情况下,假设没有任何限制和瓶颈。
Ravg(均值性能):
实际应用中的计算性能往往无法达到峰值性能。这是因为实际应用中存在各种因素的限制,例如数据依赖性、存储访问延迟、算法效率等。因此,考虑到这些限制因素,需要对均值性能(Ravg)进行评估。Ravg(Average Performance)是指在实际应用中,设备或系统在给定工作负载下的平均计算性能。它考虑了实际应用中的各种因素,并提供了更接近实际应用场景的性能指标。Ravg通常基于实际测试或模拟运行应用程序来获得。
另外,在现实的场景中,衡量算力的状况会更为复杂。单个芯片算力指标强大,未必多个芯片叠加,指标性能也会想当然的翻倍关系,因为这牵扯到:
- 芯片的扩展性能:需要考虑芯片之间的通信、协同工作、负载均衡等方面。
- 吞吐量和并行性:要考虑它能够同时处理多少任务、支持多少并发操作以及整体的吞吐量。这可以通过测试系统在高负载情况下的性能来评估。
- 通信和数据传输:评估叠加系统时,要考虑芯片之间的通信带宽、延迟以及数据传输的效率。高效的通信和数据传输能够提高整体系统性能。
- 总体能耗和功耗:如果能耗过高,也意味着运行的OPEX高过,这在成本计算中非常重要,所以评估系统性能时,需要考虑功耗和能耗的因素,以确保叠加系统在提供高性能的同时,能够保持适当的功耗和能效。
- 立体计算的复杂性:立体计算(Computing Continuum)是一个综合了云计算和边缘计算的概念,旨在提供更全面和灵活的算力支持。在传统的计算模式中,云计算主要依靠中央数据中心提供计算和存储资源,而边缘计算则将计算任务分布到离数据源更近的边缘设备上。而立体计算则结合了这两种模式,将计算能力在云端和边缘设备之间进行协同和整合。立体计算的复杂性主要体现在算力评估和资源调度方面。由于计算任务可以在云端和边缘设备之间进行迁移和分配,需要综合考虑多个因素来评估最佳的计算资源配置。这些因素包括任务的性质和要求、数据的位置和访问延迟、设备的计算能力和网络带宽等。
3. 算力发展简史
在互联网诞生之前,算力主要指的是单机计算能力,以大型机为代表。这些大型机由主机、终端和终端接口设备组成,拥有强大的计算和存储能力,通常由大型企业或机构使用。
随着互联网和通信技术的发展,计算能力逐渐向云端迁移,引发了云计算的兴起。云计算利用互联网实现对计算资源(包括处理能力、存储空间和软件服务)的按需访问和共享。云计算提供了高度灵活、可扩展和经济高效的计算模式,使个人用户和企业能够根据需求快速获取和使用计算能力,而无需投资大量资金建设自己的计算基础设施。
随着云计算的发展,人们开始意识到在特定领域或应用场景中,需要更强大的计算能力来处理更大规模的数据和更复杂的计算任务。这促使了超算中心(Supercomputing Center)的出现。超算中心致力于构建和运营高性能计算系统,通过集群、并行计算和优化算法等技术实现超级计算能力。超算中心广泛应用于科学研究、天气预报、模拟计算、大规模数据分析等领域。
智算中心(Intelligent Computing Center)则是在超算中心基础上发展起来的概念。智算中心着重于结合人工智能和大数据分析等技术,提供高性能的智能计算能力。智算中心通过深度学习、机器学习和推理等算法,实现对复杂任务的智能处理和决策支持。智算中心的兴起与人工智能应用的快速发展密切相关。
和提供虚拟化云计算服务的获取、资源存储、弹性扩展和灵活性的云数据中心(Cloud Data Center)以及专门用于解决科学、工程、天气预报、气候模拟等领域的复杂科学计算问题进行高性能计算的超级计算中心(Supercomputing Center)不同,也和注重哈希计算的比特币矿机农场不同,今天我们谈的算力,主要说的是用于用于进行复杂的人工智能数据分析、模型训练和智能决策的智算中心(Intelligent Computing Center)。智能计算中心可以支持人工智能应用的开发、训练和部署,例如图像识别、自动驾驶、自然语言处理、知识图谱、智慧家居、智能制造、智能医疗、智慧城市等领域。它通常具有优化的硬件架构和软件工具,以提供高效的AI计算能力。智算中心需求正在呈指数级增长,未来在社会总计算需求中将占据80%以上。智算中心是智慧时代社会经济运行必不可少的基础设施,目的是实现智算的普惠。
随着算力的不断提升,计算能力会变得无处不在,渗透到人们日常生活和工作环境的每一个毛孔,每一个环节。”泛在计算”(Ubiquitous Computing)会结合智能终端、物联网的计算能力,数据在最合适的地方,以最合适的算力来计算,减少数据搬移,提高整体系统的性能。
4. 眼花缭乱的算力芯片
从基本大类来说,基本上就是两类,一类是通用芯片(General-Purpose Chip),一类是专用芯片(Specialized Chip)。从名称上就可以看出来,前者具有广泛的计算能力,设计用于处理多种不同类型任务,后者是根据特定的计算需求和应用场景而设计的芯片。它们通常针对特定的计算任务进行优化,以提供更高效的计算能力。
通用芯片基本上说的就是CPU(Central Processing Unit),x86和ARM都是最常见的通用芯片架构。x86架构是由英特尔(Intel)公司最早推出的一种指令集架构。它广泛应用于个人电脑和服务器领域,并成为主流的桌面和数据中心处理器架构。x86架构的代表性产品包括英特尔的Core系列处理器和AMD的Ryzen系列处理器。ARM架构是一种低功耗、高性能的指令集架构,主要用于移动设备和嵌入式系统。它在智能手机、平板电脑和物联网设备等领域得到广泛应用。ARM架构的特点是能够提供高性能和能效的平衡,使其适合于移动设备的需求。ARM架构的代表性产品包括高通(Qualcomm)、联发科(MediaTek)和苹果(Apple)等公司的处理器。APU(Accelerated Processing Unit)也是一种通用芯片。将CPU和GPU的计算能力集成在同一个芯片上,以提供更好的整体性能和能效。CPU负责通用计算任务,而GPU则专注于图形渲染和并行计算任务。通过在同一芯片上集成CPU和GPU,APU可以提供更紧密的协同工作和更高效的数据传输,从而提供更好的图形处理和整体计算性能。
专用芯片就很多种类了,我们经常听到的DPU、GPU、NPU、TPU、FPGA和ASIC这些眼花缭乱的分类,都是专用芯片的范畴:
GPU(图形处理器):
GPU最初设计用于图形渲染,但由于其并行计算能力,逐渐被应用于通用计算和人工智能。GPU具有大规模的并行处理单元,适用于并行计算密集型任务,如深度学习训练和大规模数据处理。相比于CPU,GPU在并行计算方面表现出更高的性能,但功耗也相对较高。
DPU(深度学习处理器):
DPU是专门为深度学习任务而设计的芯片。它具有高度优化的硬件和软件结构,可以加速神经网络的推理和训练过程。DPU通常具有高效的矩阵计算能力和低功耗特性,使其在边缘设备和嵌入式系统上表现出色。
NPU(神经网络处理器):
NPU是专门为神经网络推理任务而设计的芯片。它通过硬件优化和高度并行的计算结构,提供高效的神经网络推理性能。NPU通常在移动设备和边缘计算平台上使用,以提供低功耗、实时的人工智能计算能力。
FPGA(现场可编程门阵列):
FPGA是一种可编程的硬件芯片,可以通过配置来实现不同的功能和计算任务。FPGA具有高度的灵活性和可定制性,能够适应各种应用需求。在人工智能计算中,FPGA可以通过编程实现特定的神经网络架构和加速算法,从而提供高性能的定制化计算。
ASIC(专用集成电路):
ASIC是专门为特定应用而设计的定制芯片,其功能在制造时已经固定,无法重新编程。在人工智能计算中,一些公司开发了专用的AI芯片(如Google的TPU),它们采用ASIC设计,通过专门的电路优化实现高效的人工智能计算。ASIC可以提供极高的性能和能效,但对于通用计算任务缺乏灵活性。
TPU(张量处理器):
TPU是由谷歌开发的专门用于人工智能加速的芯片。TPU针对大规模的深度学习工作负载进行了优化,特别擅长进行高度并行的矩阵计算。TPU在训练和推理任务中都具有较高的性能和能效,广泛用于云端的人工智能计算。
5. 一枝独秀的GPU
在所有上述的专用芯片中,GPU最近是最热门的一种。因为众所周知,GPT就是用GPU进行训练的。所以也让做GPU最牛的目前绝对领先的市场地位的英伟达(NVIDIA)赚了个盘满钵满。
自2012年起,GPU开始被广泛应用于构建和加速深度神经网络。Kepler、Maxwell和Pascal架构的GPU在人工智能领域得到越来越广泛的应用。随着人工智能和云计算的快速发展,Volta成为第一个专注于计算方向的GPU架构,首次引入了张量核心(Tensor Cores),在深度学习场景下的性能比上一代Pascal架构提高了5倍以上。从此,GPU算力正式分化为计算和图形两个不同的发展方向。Turing架构更侧重于图形处理,并引入了广为人知的RTX系列产品线,推出了许多面向消费级市场的图形卡。
最新的Ampere架构则大幅增强了GPU在计算方向的能力。其技术突破包括采用7nm工艺、第三代张量核心(Tensor Cores)、多实例GPU(MIG)、第三代NVIDIA NVLink互联技术、细粒度结构稀疏性等。这些新技术带来的特性组合使得Ampere架构的A100 GPU成为多面手,适用于大数据分析、科学计算、深度学习训练和推理等主流计算场景。A100 GPU支持构建具有高吞吐量和多功能性的弹性数据中心,大幅降低数据中心成本,使其成为云上算力的高性价比选择,甚至成为行业算力计量的”通用货币”。许多关于算力的计算都以A100的数量为基准。据估计,海外巨头平均拥有50万片以上的A100 GPU。国内大厂也纷纷部署大型模型,因此可以预见,对A100 GPU的需求将迅速增长到百万级别。
6. 算力部署的极限思维
但我们也必须意识到依赖进口芯片存在大概率技术依赖和供应链风险。如何通过发展国产人工智能芯片,降低对进口技术和产品的依赖,提高技术独立性,减少潜在的安全和政策风险,是不可回避的问题。
中美关系的复杂性,使得我国大厂直接采用英伟达A100的可能性在下降,更不要说新发布的更强算力的H100了。所以要极限思维,做到提前战略部署,是非常急迫的挑战。
近期看到了北京、深圳在提升算力方面的政策出台:
《北京市加快建设具有全球影响力的人工智能创新策源地实施方案(2023-2025年)》(简称《实施方案》)提出,推动国产人工智能芯片实现突破。面向人工智能云端分布式训练需求,开展通用高算力训练芯片研发;面向边缘端应用场景的低功耗需求,研制多模态智能传感芯片、自主智能决策执行芯片、高能效边缘端异构智能芯片;面向创新型芯片架构,探索可重构、存算一体、类脑计算、Chiplet等创新架构路线。积极引导大模型研发企业应用国产人工智能芯片,加快提升人工智能算力供给的国产化率。
《深圳市加快推动人工智能高质量发展高水平应用行动方案(2023—2024年)》也提到了强化智能算力集群供给,包括:建设城市级智能算力平台、打造大湾区智能算力枢纽以及建设企业级智能算力平台。
从这些动作看来,加强技术独立性,加快智能芯片开发、加快智算中心的部署迫在眉睫,刻不容缓。为北京和深圳点赞。
针对算力,除了芯片,其实还有很多可以聊的话题,为此,还是拆成两期,智愿君下期再深入谈一下智算中心所涉及的技术,咱们下期再见。