2025-07-28 17:31:56

中国工程院院士郑纬民:做好模型推理要掌握四大关键

  • 分享至
  • 分享到微信
  • 分享到微博

【导语】7月27日,上海举办了世界人工智能大会的一个分论坛,聚焦“芯节点·新突破——协同创新聚力 加速智算破局”主题。中国工程院院士、清华大学计算机系教授郑纬民在会上发表了重要演讲,深入剖析了人工智能产业竞争的关键——大模型推理引擎。他指出,要提升模型推理能力,必须掌握算子优化、模型量化、异构调度和并行优化四大关键点。这些关键技术的突破,将为人工智能的未来发展注入强劲动力。

7月27日,世界人工智能大会分论坛“芯节点·新突破——协同创新聚力 加速智算破局”主题论坛在上海举行。中国工程院院士、清华大学计算机系教授郑纬民会上发表演讲。他表示,大模型推理引擎是人工智能产业竞争的关键,做好模型推理需要掌握好算子优化、模型量化、异构调度、并行优化四大关键点。

郑纬民.jpg

关键点一:算子优化

算子优化就是对大模型中的单个算子(如Conv卷积、MatMu矩阵乘法等)做性能改造,使同一个算子在给定硬件上跑得更快、占用内存更少、功耗更低。例如,将“卷积”这个算子从普通C语言替换为汇编级Winograd+SIMD+缓存分块,就是一次算子优化。

算子优化主要有两种实现方案:其一,图层优化,包括不等价交换,用可控误差换性能;基于表达式交换,用代数/符号规则在图层级别做等价化简;张量属性变换,通过调整张量的形状、步长等消除冗余内存搬移或者提高并行度等。其二,算子层优化,即采用计算访存重叠、异步流水调度等技术进行算子优化。

关键点二:模型量化

模型量化就是将模型中的浮点参数(如32位FP32)转换为低比特整数(如8位INT8)的技术,目的(de)是缩减模型体量、降低计算量、提升推理速度,同时尽量保持模型精度。在模型规模急剧增加、低精度计算单元越来越多样的背景下,模型量化是减少内存需求和提升推理性能(néng)的(de)有(yǒu)效(xiào)途径。

当前模型量化主要有两种方案:

其一,单一精度量化,直接将模型中的高位宽参数替换为低比特,例如将16位浮点(diǎn)数(shù)直(zhí)接(jiē)替(tì)换为8位整数,这一方式以“极简部署”换“精(jīng)度(dù)弹(dàn)性(xìng)”,在硬件支持单一格式或对精(jīng)度(dù)不(bù)敏感时是首选。

其二,混合精度量化,在同一网络里按层、张量或通道分别使用两种及以上位宽(如INT8+FP16、INT4+INT8、FP8+FP16+FP32等),而不是“一刀切”成单一低比特。

但混合精度推理的发展也面临着挑战,混合精度库开发周期长,历时超过一年;代码量大,超过1万行;算子性能差,相较于单一精度推理,性能下降70%。导致现有的混合精度推理利用率仍较低。

关键点三:异构调度

异构调度指在包含多种不同类型计算单元(CPU、GPU、FPGA、AI加速器等)系统中,将任务或子任务动态、合理地分配到最合适的处理器上,同时满足性能、功耗、资源利用率或实时性等多重目标的一种资源管理技术。该技术的目标是让正确的任务在正确的时间跑到正确的芯片上,例如将“跑得快但耗电高”的GPU留给矩阵乘法,把“省电但慢”的CPU小核留给控制逻辑。

模型推理可大致分为两个过程:一是P过程(prefill,预填充),二是D过程(decode,解码)。前者预处理负载请求的所有token,读取并“理解”用户输入的上下文,这一过程是计算密集型的;D过程则是和访存密集相关。

P过程与D过程所需的负载不同,如果能将P过程和D过程拆成两个独立的流水线,分别在不同的硬件上跑,且能实现互不干扰,推理计算的整体性能就提高了。

关键点(diǎn)四(sì):并(bìng)行(xíng)优(yōu)化(huà)

并(bìng)行(xíng)优(yōu)化(huà)即(jí)把(bǎ)深(shēn)度(dù)学(xué)习(xí)任(rèn)务(wu)拆(chāi)成(chéng)多(duō)条(tiáo)独(dú)立(lì)或(huò)半(bàn)独(dú)立(lì)的(de)计(jì)算(suàn)通(tōng)路,让(ràng)他(tā)们(men)在(zài)同(tóng)一(yī)个(gè)时(shí)刻(kè)被(bèi)多(duō)个(gè)计(jì)算(suàn)单(dān)元(yuán)并(bìng)行(xíng)执(zhí)行(xíng),从(cóng)而(ér)在(zài)“时(shí)间(jiān)”或(huò)“空(kōng)间(jiān)”维(wéi)度(dù)上换取整体吞吐或延迟提升的一系列工程手段。简单理解,这就相当于“把1个人干100天的活,拆成100个人1天干完”。

当前,并行优化面临着两大挑战:

其一,由于推理场景多样化,且不同推理场景的负载模式不同,固定的并行策略无法适应动态推理场景。例如,科研论文摘要、财报分析等,输入内容长,则Prefill占优,属于计算密集型任务;深度思考,输出文本长,则Decode占优,属于访存密集型。针对这些不同的应用场景,需要制定不同的并行策略。

其二,由于大模型服务场景存在明显的潮汐特性,不同时段的系统压力不同,静态的推理系统也无法适应动态服务场景。具体来看,白天时段使用人数多,请求量大,系统压力大,存在显存缺口;凌晨时段使用人数少,请求数量小,系统压力小,存在显存空闲。

因此需要采用动态的并行策略,通过并行策略自动调整减少算力浪费。例如,在请求较多时,采用张量并行+流水线并行的策略,吞吐量更大;在请求较少时,Attention(注意力机制模型)部分采用数据并行,MoE(混合专家模型)部分采用专家并行策略的吞吐量更高。