贵阳微博网 > 科技 > 智能 >

Facebook把服务27亿人的AI硬件系统开源了

发布时间:2019-03-15 12:08来源: 未知

不绝以来,社区对 Facebook 的硬件钻研相比关注。在克日的开放计算项目全球峰会上,Facebook 技术策略主管 Vijay Rao 开源了全新的 AI 硬件:面向 AI 磨炼与推理的硬件零碎 Zion 与 Kings Canyon,以及针对视频转码的 Mount Shasta。这篇博客内容对此进行了详细引见。

Facebook 的基本设施其时每月为其整个使用与做事零碎上逾越 27 亿的人提供管事。他们的项目师设计并创立了低级、高效的系统来精简这一基本设施,但是随着工作负载的增长,单靠通用措置器已经无法满足这些细碎的需求。晶体管增长的速度已大大放缓,这就重要开收回特意的加速器与个人的细碎级解决方案来提高性能、功率与违抗。

为基础设施竖立高效的解决方案必要一起设计优化了工作负载的硬件。为此,Facebook 始终与协作同伴一块儿启示针对 AI 推理、AI 熬炼与视频转码的解决方案。这几个都是其发展最快的处事。今天,Facebook 揭晓了其用于 AI 锤炼的下一代硬件平台 Zion、针对 AI 推理的新定制芯片设计 Kings Canyon 以及用于视频转码的 Mount Shasta。

AI 硬件

AI 工作负载的使用贯穿 Facebook 的架构,使其做事相关性更强,并改良用户使用效能的体验。经过大领域部署 AI 模子,Facebook 天天可以提供 200 万亿次臆测以及超过 60 亿次语言翻译。Facebook 使用 35 亿多公开图像来构建或锤炼其 AI 模子,使它们更好地识别与标记内容。AI 被使用于种种千般的处事中,布施人们进行常日互动,并为其提供神奇的特点化办事。

Facebook 上的大少数 AI 流程凡是通过其 AI 平台 FBLeaner 进行筹划的,该平台囊括遣散处置惩罚各部分问题的工具,如特色库、训练任务流程规划以及推理机。与设计并发布到 Open Compute Project(OCP)的硬件相结合,这将能够促使 Facebook 大范畴、高效地部署模子。从一个执著的基础底细劈头劈脸,Facebook 埋头于创立与提供商无关的整合硬件设计,而且为实现工作听命最大化,继续坚持分解设计原则。究竟等于 Facebook 推出了用于工作负载锤炼与推理的下一代硬件。

AI 熬炼系统 Zion

Zion 是 Facebook 下一代大存储对立熬炼平台,设计上能够高效处置惩罚一系列神经网络,包括 CNN、LSTM 与 SparseNN。Zion 平台能够为其严重的任务负载提供高存储才能与带宽、灵动高速的相连、弱小的较量争论能力。

Zion 采纳了 Facebook 全新的、与供应商无关的 OCP 加速模块(OAM)。OAM 状态系数让 Facebook 的合作搭档(包括 AMD、Haban、GraphCore 和 Nvidia)可以在 OCP 通用规范上启示自己的解决方案。经由单个机架使用 TOR Internet转换,Zion 架构让 Facebook 能够在每个平台上默默扩展到多个办事器。跟着 Facebook AI 锻炼工作负载的畛域与芜杂性不时增长,Zion 平台也会随之扩展。

Zion 系统分为三个部门:

8 插槽处事器

8 加速器平台

OCP 加速器模块

AI 磨炼解决方案基本模块

Zion 毗邻模块图解

Zion 将琐细的内存、较量争论与网络辘集型组件团圆,使每一小块都可独自扩展。该体系为 8 个 NUMA CPU 插槽提供了一个大型 DDR 存储池,以满足任务负载存储容量辘集型组件的需求,好比 SparseNN 的嵌入表。对

CNN

大约 SparseNN 辘集部份多么的存储-带宽密集型与共计辘集的工作负载,每个 CPU 插槽都联接了 OCP 加速模块。

体系有两个高速组织:连接全数 CPU 的干系组织与联接一切加速器的布局。因为加速器存储带宽高但存储容量低,因而经由以这样的办法对模型进行分区来有用利用可用的总存储容量,从而使造访频率较高的数据驻留在加速器上,会晤频率较低的数据驻留在具有 CPU 的 DDR 内存上。一切 CPU 和加速器之间的算计与通讯都是均衡的,何况颠末高速与低速相连有效地进行。

经由 Kings Canyon 试验推理

一旦咱们训练完模子,就紧要将其部署到生打造环境中,从而措置 AI 流程的数据,并响运用户的求告。这就是推理(inference)——模型对新数据实验预料的历程。推理的任务负载正急剧增多,这反映了锤炼工作的多量增进,今朝标准 CPU 任事器已经没法满足需求了。Facebook 正与 Esperanto、Intel、Marvell 与 Qualco妹妹 等多个单干搭档分工,启迪可在根抵设施上部署与扩展的推理 ASIC 芯片。这些芯片将为任务负载提供 INT8 半精度的运算,从而获取志向的性能,同时也赞成 FP16 单精度的运算,从而得到更高的粗略率。

整个推理效能器的解决方案分为四个分歧的部门,它们会利用已颁布发表到 OCP 的现有构建块。利用现有组件可以加快斥地进度,并颠末通用性高涨开发风险。该设计的四个首要造成局部为:

Kings Canyon 推理 M.2 模块

Twin Lakes 单插槽(single-socket)效能器

Glacier Point v2 承载卡(carrier card)

Yo搜索引擎营销ite v2 机架

图:AI 推分明决方案模块

图:AI 推明白决方案连接模块图解

深度学习模子有很高的贮存申请。比方,SparseNN 模型具有尤为大的嵌入表征表,它会占用好几 GB 的存储空间,并且还可能会继续增长。何等的大模型可能不适当加载到零丁设备的内存中,无论是 CPU 仍是加速器都不可,以是这就申请在多个设施内存出息行模型联系(model partitioning)。当数据位于另一个设施的内存中时,分割将制造生不少通信资源。因而,好的图宰割(graph-partitioning)算法将测验考试捉拿局部的观念,从而低落通信本钱。

经由适宜的模型豆割,我们可以运转非常大的深度深造模型。好比 SparseNN 模子,假定单节点的内存手法不够以赞成给定的模子,咱们可以考虑在两个节点中共享模型,并抬举模型能访问的内存量。这两个节点可以经过量主机 NIC 毗连,并支持高速信息处理。这将添加小我的通信老本,但我们可以利用跨多个嵌入表存在走访差异的事实,响应地对表进行排序而降低通信延迟。

神经网络硬件加速器编译器

ASIC 不运行通用代码,因为它们重要特定的编译器才能将图转化为在这些加速器上履行的指令。Glow 编译器的目的是将供给商的特定硬件从更初级的软件堆栈中抽象进去,使基础设施不受提供商限度。它接受来自框架(如 PyTorch 1.0)的算计图,并为这些机器进修加速器生成高度优化的代码。

Glow 编译器

使用 Mount Shasta 进行视频转码

自 2016 年以来,Facebook Live 直播的匀称数目每一年翻一番。自 2018 年 8 月在全球推出以来,Facebook Watch 的月涉猎量也曾逾越 4 亿,天天有 7500 万人使用。为了优化全数这些视频,使其能顺应多种网络环境,Facebook 生成了多个输出风致和鉴别率(或比特率),这个进程喻为视频转码。完成这个转码过程所需求的合计是高度鳞集型的,通用 CPU 没法满足 Facebook 日益增长的视频必要。为了走在需求的反面,Facebook 与博通和芯原合作,设计为转码负载进行美化的定制 ASIC。

视频转码流程被潮解为许多差距的按次,上面将给出更具体的简介。这些挨次凡是在今天的软件中运行的,以是为了提高效用,Facebook 与供应商互助,为转码工作流程的每一个阶段建树了涵概专门使用芯片的定制 ASIC。使用定制化的硬件来完成这些工作负载使得这一进程的能源使用加倍高效,并赞成实时 4K 60fps 流传媒等新功能。单个视频编解码器是标准化的,而且不屡屡修正,于是在这类情况下,定制芯片外在缺乏活络性其实不是一个明明的短处。

视频转码的第一个阶段称为解码,在解码进程中,上传的文件被解压,以失掉由一系列图象显示的原始视频数据。此后,可以对这些未紧缩的图像进行独霸,以更改它们的辨别率(称为缩放),接下去再次使用美化设置进行编码,将它们从新膨胀到视频流中。将输入视频与原始视频进行相比,合计品质指标,这些指标代表了绝对于原始上传视频的品格变动。一样平常全数的视频都采取这类做法,以确保所用的编码配置可以发生发火高质量的输入。视频编码和解码使用的尺度喻为视频编码门径;H.264、VP9 和 AV1 是当前使用的干流编码协定。

在 ASIC 上,除了每个软件算法都被芯片内的专一使用部件所经办外,其余步调都是相通的。匀称而言,Facebook 盼望这一视频加速器比其目前的处事器遵从高许多倍。他们但愿业界的方针编码在 10W 功耗内最多处理 2x 4K 判别率与 60fps 的并行输入流。ASIC 还必要赞成多种判别率(从 480p 到 60fps 的 4K)与多种编码样式(从 H.264 到 AV1)。

视频转码 ASIC 通常有以下首要逻辑块:

解码器:接收上传的视频;输入解紧缩的原始视频流

缩放器(Scaler):缩放解压缩的视频

编码器:输入膨胀(编码)视频

品格襟怀胸襟:权衡编码递次以后的视频质量流失

PHY:芯片与外界的接口;毗连到效力器的 PCIe 与内存的 DDR

管制器:运行固件并和谐转码流程的普片块

视频转码解决方案基础底细模块

与推理一样,Facebook 利用现有的 OCP 构件在数据核心安排这些转码 ASIC。ASIC 将安装在带有集成散热器的 M.2 模块上,由于这类思空见贯的电气外形可以在不合硬件平台上重复利用。它们被安装在 Glacier Point v2 (GPv2) 载体卡中,该载体卡可以容纳多个 M.2 模块。这个 GPv2 载体卡具有和 Twin Lakes 做事器异样的物理外形,象征着它可以适配 Yosemite v2 机架,并在个中与 Twin Lakes 效能器配对。

由于转码 ASIC 功耗低、体积小,Facebook 巴望颠末将尽量多的芯片与单个效力器相联接来靡费资本。高密度的 GPv2 完成了这一点,同时还提供了充实的冷却才智来遭受数据核心的运转温度。

一旦完成软件集成任务,Facebook 将平衡散播在不合数据外围位子上异质硬件 fleet 的视频转码任务负载。为了在与种种机械深造和视频空间提供商的协作进程中扩大范围,他们还努力确保软件以开放的模式启示,并推行和采用普片的界面和框架。