腾讯联合生态伙伴共同推动业界首个异构硬件编程模型标准立项
近期,由腾讯联合中国移动、中国联通、中国信通院、中国科学院计算技术研究所共同发起,在中国通信标准化协会(CCSA) 互联网 与应用委员会(TC1)推动异构硬件两项行业标准成功立项,为AI 软件在不同硬件芯片上迁移提供标准牵引,提升大模型时代的AI应用开发效率。
通用处理器漫长发展过程中,逐渐形成了由编程语言、编译器中间表示、指令集架构等构成的复杂的层次化中间层(indirection)模型,通过引入平台无关的中间抽象,兼容不同下层实现的差异,比如处理指令集架构,形成了繁荣的软件生态,其中典型代表就是Java字节码。因此,程序员在开发应用时,基本只需要面向通用编程语言或接口,无需消耗心智在底层实现复杂性上。
在AI 大模型时代,开发者希望无论新一代的GPU硬件设计如何变化,之前编写的软件依然可以在不同的芯片上正确运行,但由于硬件和应用层面的难点,程序员仍然需要重新编写代码,以适配不同的硬件设计,严重增加开发团队成本。
本次标准成功立项正是对AI时代跨平台兼容性和标准化工作的一次大力推进。具体而言,腾讯联合多家单位成功立项的这2项行业标准:《智能算力硬件统一编程模型及范式技术要求》和《智能算力硬件统一虚拟指令集技术要求》。 前者为开发者提供一套针对不同硬件的统一编程模型及范式标准;后者将定义一套异构硬件的统一虚拟指令集,对异构高性能加速硬件的运算、处理等基础功能进行一致化约束,实现同一应用程序经过一次编译即可在不同异构硬件上运行和迁移。
标准成功立项凝聚了腾讯海量的实践经验,腾讯大数据自研ABO异构编译器对此探索了完全开放的问题域, 比如,对于典型的数据分析、推荐等神经网络加速场景,ABO在自研芯片落地、GPU加速分析和CPU内置加速器等多环节,实现并验证了该方案的可行性与效果。
同时,ABO异构编译器展现了其对主流框架、模型格式、以及异构硬件的强大支持能力,包括兼容PyTorch、Tensorflow、ONNX等主流框架及相应的模型格式,支持CPU、GPU以及腾讯自研的紫霄处理器等多种硬件平台,使得业务几乎无需对源码或模型结构进行修改,便能在异构平台上运行,并获得显著的性能提升。
在具体业务落地中,以腾讯广告推荐场景中,支持联盟粗排等业务异构芯片生产上线,性能超过了厂商原生方案的30%-140%,精排业务也在上线进行中;在大模型推理场景中,ABO异构编译器支持多种混元子模型,能够平滑运行在多异构芯片上,有效降低平台架构和应用开发者迁移成本,并成功落地文档、大数据、AI数据通路等多个业务;在AI领域数据通路场景中,支持自研文生图、文本图片相关性模型运行在NPU、GPU和CPU等混合芯片场景。
未来,腾讯将一步携手产业各界,探索更多标准落地,为数字化发展提供更多参考指引。