深度学习框架与 AI 硬件厂商,相辅相成、共同发展。百度飞桨与 NVIDIA 等 40 多家硬件伙伴正在践行这一理念。
备受关注的 NVIDIA GTC 2023 大会已经结束,NVIDIA CEO 黄仁勋依然给所有人带来了震撼,搬出了为 ChatGPT 准备的芯片,向世人展示了 GPU 持续在算力上赋能大模型乃至整个深度学习领域的巨大潜力。大会期间,黄仁勋还与 OpenAI 联合创始人、首席科学家 Ilya Sutskever 进行了一场深度对话,他们一致认为深度学习的强大能力已经改变了世界,真正推动了技术的进步。的确,近年来,深度学习技术正在推动整个 AI 行业进入到一个全新的阶段。AI 领域的技术创新和产业发展离不开深度学习框架和平台,它联动了 AI 产业链上下游众多企业和用户,通过持续降低应用门槛将 AI 技术传递给千行百业,推动 AI 应用大规模落地。作为国内 AI 领头雁的百度,其飞桨产业级深度学习开源开放平台集核心框架、产业级模型库、开发套件与工具组件于一体,其中百度生成式 AI 产品文心一言正是孕育自产业级知识增强大模型文心。截止 2022 年 11 月,飞桨已经凝聚了 535 万开发者,服务了 20 万家企事业单位,创建了 67 万个 AI 模型。百度依托飞桨平台,围绕着技术、生态和产业构建了全方位、多层次的深度学习发展格局。生态建设则是联动各方实现技术融合和落地的关键步骤,而作为生态建设重要的一环,硬件生态正是联合硬件厂商搞好 AI 芯片的适配与优化,最终达成合作共赢。作为全球 GPU 巨头的 NVIDIA,成为了百度飞桨天然的合作伙伴。NVIDIA 自身也非常重视中国市场尤其中国的生态伙伴,飞桨成为其在世界上支持的三大深度学习框架之一,更有专门的工程团队来赋能飞桨生态。过去数年,飞桨与 NVIDIA 在硬件生态建设上一直保持着全面深度的合作,做了大量的开发与优化工作,并通过技术共研开拓了众多软硬件协同产品与功能。尤其在 2022 年,双方的合作迈入了新的阶段。我们知道,随着深度学习的快速发展尤其是大规模机器学习模型的涌现,AI 算力需求的增长达到了新的高度。这无疑给硬件厂商带来巨大挑战,要求他们生产出非常强大的 AI 芯片。同时,AI 芯片与深度学习框架的融合优化,才能带来前所未有的加速,将性能发挥到极致。不过,就拿 PyTorch 等常用开源深度学习框架来说,开发团队不接受硬件厂商的代码进入主干。这就导致硬件厂商支持新版本框架的成本高昂,只能有选择地支持重点版本。这样一来,硬件厂商的 AI 芯片与深度学习框架之间存在适配问题,AI 基础软硬件产业链上下游也就无法实现高效的协同发展。飞桨则不然,从 2020 年开始致力于 AI 芯片的适配,与国内外硬件厂商展开深度合作,共同开发更加便捷的核心框架,构建统一的硬件接入方案。通过与广大硬件厂商构建合作生态,真正发挥出 AI 芯片的算力。以 NVIDIA 为例,它早在 2020 年 5 月就加入了「飞桨硬件生态圈」计划,后续更与飞桨展开了一系列深度合作。具体到硬件适配上,飞桨与 NVIDIA 主要在四个方面进行合作。在数据处理上帮助飞桨集成 DALI,在大规模训练上支持各类数据格式以及 ASP、CUDA 等算子函数 API,在优化推理上开发 Paddle-TRT、Deep Learning Examples,在规模部署上集成了 NCCL、开发了 Triton PaddlePaddle Backend。多样化适配使得飞桨开发者的高性能推理训练成为可能,也为其与飞桨的进一步合作打下了基础。2022 年,飞桨开启与硬件生态伙伴全面共创的一年。在 5 月 20 日的 Wave Summit 2022 深度学习开发者峰会上,飞桨携手 NVIDIA 在内等十余家国内外硬件厂商发布了「飞桨硬件生态共创计划」,通过共享共创打造繁荣的 AI 生态。在此次峰会上,飞桨发布了其与 NVIDIA 的共研共创合作方案。具体地,针对硬件适配依然存在的高门槛以及用户的多层次需求,双方在已有合作的基础上开发了三大主要产品,包括了 NVIDIA NGC PaddlePaddle Container —— NGC 飞桨容器、NVIDIA Deep Learning Examples—— 飞桨深度学习模型示例、以及 NVIDIA DLI (Deep Learning Institute)—— 飞桨共建课程。对于使用 NVIDIA GPU 平台的飞桨用户,这些举措可以使他们获得绝佳用户体验与极致性能。首先针对开发者用户的一些痛点需求,比如使用 NVIDIA 最新软件栈开发、训练、部署时需要大量手动配置工作,工程挑战巨大。因此飞桨联合 NVIDIA 开发了 NGC 飞桨容器,针对 NVIDIA GPU 加速进行优化,最大程度释放飞桨框架在 NVIDIA 最新硬件上的算力。NGC 飞桨容器还包含了用于加速 ETL (DALI、RAPIDS)、训练(cuDNN、NCCL)以及推理(TensorRT)工作负载的软件,实现了飞桨与 NVIDIA 软件栈的无缝集成与性能优化。有了 NGC 飞桨容器,用户在快速开启 AI 应用的同时,还能在 AI 训练和推理任务上享受飞桨 +NVIDIA 带来的飞速体验。此外通过 NVIDIA NGC 完善的开发体系、质量管理、测试流程、文档规范、安全扫描等,双方开发了基于 NVIDIA GPU 平台最好的飞桨开发环境。作为 NVIDIA 优化的工业级模型库,NVIDIA Deep Learning Examples 涵盖了机器人、数字孪生、金融等不同行业的模型,目标是让使用 NVIDIA GPU 平台的开发者复现 NLP 和 CV 等领域拥有极致性能的经典模型。2022 年 10 月,NVIDIA Deep Learning Examples 仓库上线了基于飞桨实现的 ResNet50 模型,相关示例全面适配各类 NVIDIA GPU 以及单机单卡、单机多卡等各种硬件拓扑,实现了性能极致优化。值得一提的是,飞桨 ResNet50 模型的训练速度超过了 PyTorch 版 ResNet50。之后还支持了 BERT 模型,后续将陆续支持 PP-YOLOE 等模型。为了更好地提高推训性能并简化代码,NVIDIA 深度学习培训中心(DLI)不仅准备了系列免费课程,还联名飞桨推出 DLI 课程证书,为开发者的能力和职业发展提供了权威证明。例如飞桨与 NVIDIA 联合打造了《使用 PaddlePaddle 与 TensorRT 完成深度学习优化与部署》课程,让开发者感受基于 PaddlePaddle 与 TensorRT 的优化部署最佳体验。2022 年 11 月 30 日,在 WAVE SUMMIT+2022 深度学习开发者峰会上,飞桨又携手 NVIDIA 等 12 家硬件伙伴发布了飞桨生态发行版。对于用户而言,当在 NVIDIA GPU 平台上跑飞桨时,会提供专门的软件版本,使开发者享受更好的软硬一体化体验。至此飞桨与 NVIDIA 的硬件生态合作又进了一步。在飞桨着力打造繁荣共赢生态、促进软硬件协同发展的过程中,NVIDIA 是重要的参与者和见证者,并成为飞桨合作生态中最为深入和标杆性的案例。随着双方合作内容的不断丰富,满足了 AI 开发者的多层次需求。同时,飞桨与 NVIDIA 的深度合作也为国内其他硬件厂商提供了一种可参照的合作模式。从飞桨与 NVIDIA 的合作中可以看到,硬件生态建设这一环做得好不好,会深刻地影响到深度学习框架自身的通用性、硬件厂商 AI 芯片的效率以及在 AI 领域的广泛应用。正是这种双方的痛点需求为飞桨与硬件厂商的生态合作做好了铺垫。作为国内市场综合份额第一的深度学习平台,飞桨一直以来非常注重与国内外硬件厂商的合作,通过与他们的紧密联系持续拓展硬件生态。截至目前,与飞桨深度融合优化的国内外硬件厂商数量已经超过了 40 家。对于飞桨来说,其与硬件生态伙伴的合作是在摸索中前进,不断地创新合作模式,经历了 2020 年的「共聚」、2021 年的「共研」、2022 年的「共创」三个阶段。每个阶段的侧重点不同,合作伙伴数量逐年增多,合作内容也更加广泛和深入。首先回到 2020 年,飞桨率先对接了国内外领先的 CPU、GPU、ASIC、服务器等硬件厂商,并于 5 月联合 Intel、NVIDIA、寒武纪、浪潮等 13 家国内外顶级硬件厂商发布了「飞桨硬件生态圈」计划,为后来的广泛硬件生态合作打好了基础。当时,飞桨除了持续增强硬件厂商对飞桨平台投入的信心,还通过金融、能源等行业的最终用户来驱动硬件厂商与飞桨适配,建立起与他们的规范流程、专门团队等。这些举措释放出了飞桨携手硬件厂商共建硬件生态的决心,并启动了与重点厂商的硬件适配和技术优化工作。在接下来的 2021 年,飞桨开始与硬件伙伴的软硬一体联合优化,进入到了「共研」阶段。不过,在执行硬件适配与技术优化过程中,双方也遇到了挑战。一是硬件厂商软件栈接入方式多样(算子库、图接入、编译器等),适配技术方案复杂。国内厂商的 AI 软件栈建设起步晚,给实际适配带来新的挑战;二是如何使得硬件厂商以较低的成本接入飞桨。针对这些挑战,飞桨结合对硬件厂商软件栈的理解设计了飞桨硬件对接方案,包括自定义算子库接入、自定义通信库等多项基础软件改造,极大降低了硬件厂商适配成本。在该阶段,飞桨支持的国产硬件数量实现了第一。进入到 2022 年,飞桨在 2021 年技术适配成果的基础上进一步拓展与硬件伙伴的合作。飞桨希望更多的硬件开发者使用飞桨进行 AI 应用创新,硬件厂商也希望引入定制版的飞桨框架、模型库来丰富自身 AI 软件栈,因此双方的合作进入到全面的「共创」阶段。首先是上文提到的「飞桨硬件生态共创计划」,旨在与飞桨硬件生态伙伴在联合研发、资源共享、联合授权、培训赋能等四个维度全面合作,更好地服务开发者,加速 AI 产业落地,实现生态繁荣共赢。在联合研发环节,飞桨与硬件伙伴成立技术研发虚拟联合团队,共同打磨基础软件栈,推进硬件与飞桨的适配与性能优化工作。尤其针对国产 AI 硬件与深度学习框架持续适配与升级成本较高的问题,飞桨推出算子接入、子图接入、编译器接入等多种方案,与厂商共建持续集成基础设施,接收厂商适配的代码。在全球前三大框架中,飞桨是唯一对所有硬件厂商开放合作、接受所有硬件厂商提交代码的框架。此外,飞桨还联合硬件伙伴共同推出飞桨生态发行版(针对特定AI硬件,定制优化的飞桨框架和飞桨模型库),大大提升飞桨模型在各类 AI 硬件上的训练推理性能,为开发者提供更多更好选择。在资源共享环节,飞桨与硬件生态共创计划伙伴共享推广宣传资源,包括共同撰写技术稿件,通过博客、论坛等社交媒体资源联动推广。飞桨还对生态伙伴联合授权,将与硬件伙伴联合优化好的方案优先推荐给生态伙伴,并基于硬件平台联合开发飞桨一体机,提供功能全面、便捷高效、稳定可靠的一站式 AI 服务。在培训赋能环节,飞桨联合生态伙伴开发飞桨 + 硬件使用开发教程,与硬件厂商在双方的学习与实训社区提供系列课程及联名认证证书,如上文与 NVIDIA 联合开发的飞桨共建课程。飞桨还与硬件伙伴在 AI Studio 中开设厂商专区,为国内深度学习开发者提供体验更多 AI 硬件的机会。目前飞桨 AI Studio 是国内最大的人工智能学习与实训社区,注册用户超过了 300 万。从共聚、共研到共创,一路走来,飞桨在硬件生态建设上持续深化与硬件伙伴的合作方式与内容,结合他们的实际需求,通过技术创新持续降低适配飞桨的成本,并利用产品共建、生态运营等途径保持适配后的商业价值。对于国内硬件厂商而言,已经具备相当规模的飞桨生态是其快速拓展硬件市场的契机,因此应勇于拥抱并创新自身与飞桨的生态合作,实现双赢。作为整个 AI 产业链的重要一环,飞桨一直以来的开放合作态度是其硬件生态持续取得成果的重要前提,接入 AI 芯片时联合硬件伙伴优化 AI 软件工具链设计,充分满足开发者在应用时对算力、模型和算力等各个层面的需求,降低开发、训练和部署的负担,带来低门槛、简易的使用体验。飞桨深度学习框架和硬件厂商这两个主体的高效协作还增强了整个 AI 行业的活力,产生真正的商业价值,在不断健全、良性的硬件生态环境中推动 AI 应用规模化落地。未来飞桨将持续开源开放,找准与硬件厂商利益契合点,在更广泛和深入的软硬协同探索中更好地服务开发者。最后,在 NVIDIA GTC 2023 大会上,百度 AI 技术生态总经理马艳军等四位专家带来了精彩的内容分享。点击文末阅读原文,即可观看演讲精彩回顾。https://www.eet-china.com/mp/a134727.htmlhttps://www.eet-china.com/mp/a155955.htmlhttps://www.jiqizhixin.com/articles/2023-01-10https://www.jiqizhixin.com/articles/2023-02-01-5https://www.jiqizhixin.com/articles/2022-09-07-4