广告

详解百度AI芯片架构

时间:2017-08-25 作者:Nicole Hemsoth 阅读:
去年有媒体报道了基于百度深度学习SDA的SQL加速器。当时的数据流基于SA架构。刚刚在加州Hot Chips大会上,百度发布XPU,这是一款256核、基于FPGA的云计算加速芯片。合作伙伴是赛思灵(Xilinx)。百度也在这次的大会上,透露了关于这款芯片的更多架构方面的细节。

刚刚在加州Hot Chips大会上,百度发布XPU,这是一款256核、基于FPGA的云计算加速芯片。合作伙伴是赛思灵(Xilinx)。百度也在这次的大会上,透露了关于这款芯片的更多架构方面的细节。

过去几年,百度在深度学习领域,尤其是基于GPU的深度学习领域取得了不错的进展。而且,百度也在开发被称作XPU的新处理器。

001ednc20170825
百度解释了FPGA上AI和数据分析工作负载的情况

百度研究员欧阳剑表示,百度设计的芯片架构突出多样性,着重于计算密集型、基于规则的任务,同时确保效率、性能和灵活性的最大化。今天,他在Hot Chips大会上与来自FPGA厂商Xilinx的人士一同发布了XPU。

002ednc20170825
百度去年宣布采用Xilinx Kintex UltraScale FPGA加速数据中心的额机器学习应用

XPU的目标是在性能和效率之间实现平衡,并处理多样化的计算任务。FPGA加速器本身很擅长处理某些计算任务,但随着许多小内核交织在一起,多样性程度将会上升。

欧阳剑表示:“FPGA是高效的,可以专注于特定计算任务,但缺乏可编程能力。传统CPU擅长通用计算任务,尤其是基于规则的计算任务,同时非常灵活。GPU瞄准了并行计算,因此有很强大的性能。XPU则关注计算密集型、基于规则的多样化计算任务,希望提高效率和性能,并带来类似CPU的灵活性。”

目前XPU有所欠缺的仍是可编程能力,而这也是涉及FPGA时普遍存在的问题。到目前为止,XPU尚未提供编译器。不过欧阳剑表示,该团队将会很快开发一款编译器。

欧阳剑还表示

为了支持矩阵、卷积,以及其他大大小小的内核,我们需要一个配备高带宽低延时内存,以及高带宽I/O接口的大型数学阵列。FPGA中XPU的DSP单元提供了并行处理能力,片外DDR4和HBM接口优化了数据传输,而片上SRAM则提供了必要的存储特性。

在Micro Benchmark测试中,对于计算密集型、常规内存访问的计算任务,XPU的效率与x86内核类似。对于数据同步的计算任务,XPU的可扩展性应当可以进一步优化。而对于没有数据同步的计算任务,XPU的可扩展性与核心数量呈线性关系。

这就是问题所在。如前所述,XPU仍然没有配备编译器。这款处理器在FPGA上实现,通过订制的逻辑电路提供指令。这些小核心类似于CPU,开发者只能使用汇编语言,而所有的执行都由主机来控制。整个流程包括拆分计算任务,编写XPU代码,调用专用的逻辑函数,从而在Linux平台上进行编译和运行。

003ednc20170825
004ednc20170825
XPU具有256个内核,集成了一个共享内存用于数据同步。所有内核都运行在600MHz。

欧阳剑称:“在百度,我们使用FPGA已有多年时间。我们的数据中心、云计算平台和自动驾驶项目中有大量FPGA。我们非常了解FPGA的优缺点,以及如何优化。凭借XPU的大型核心,我们专注于多样化的计算任务。”

去年有媒体报道了基于百度深度学习SDA的SQL加速器。当时的数据流基于SA架构。根据欧阳剑的描述,这也是XPU内存带宽和延时优势的核心。

欧阳剑同时展示了今年完成的一些benchmark测试,但信息非常粗略。不过,这只是百度第一次公开展示XPU。

如果XPU被证明可以用于AI、数据分析、云计算和无人驾驶,那么百度可能需要用ASIC技术去开发XPU。

(原文发表于nextplatform,量子位编译)

20160630000123

本文为EDN电子技术设计 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
您可能感兴趣的文章
  • 5G基础设施和对端到端可编程性的需求 展望未来十年,随着5G的出现,无线基础设施将变得更加普遍,甚至与我们日常生活的方方面面完全融为一体。5G延续了先前蜂窝标准(在驱动带宽方面)的模式,但也将其扩展到更多设备和使用模式。本文考虑如何通过具有高性能CPU子系统和包括FPGA可重编程加速硬件处理单元的SoC架构来成功应对5G的独特需求。
  • 拆解:SEW MOVIDRIVE®B变频器MDX61B 变频器配有大量输入和输出,可提供所有的基本功能。可选的通信和技术模块提供快速简便的功能扩展。产品线中较小的单元配备有两个插槽:一个用于编码器连接,另一个用于通信;较大的单元具有第三个未指定用途的扩展插槽。
  • 光学FPGA:是怎样设计和工作的? 基于锗离子注入的硅波导工艺和激光退火工艺,他们实现了可擦除的定向耦合器,进而实现了可编程的硅基集成光路,也就是所谓的光学FPGA。
  • 教你如何用树莓派实现实时人脸检测 本文介绍了如何在树莓派上,使用 OpenCV 和 Python 完成人脸检测项目。
  • SpaceX超级高铁车舱设计竞赛:设计源自年轻人创意 最近纽约市一直在认真讨论对其老化的地铁系统进行现代化改造,这将使纳税人付出巨大开支并付出巨大努力。美国国家铁路客运公司最近也由于各种原因出现多起重大事故,造成了生命损失。增加技术解决方案来改善这两个系统可能会有巨大帮助,但是我们现在是否是时候应该考虑采用像超级高铁创意这样的高级远程旅行技术系统了呢?
  • 浅谈eFPGA市场的各大玩家&商业模式&设计挑战 传统的FGPA厂商进入比较早,基本上每隔3年推新一代的FPGA,并进行全定制电路设计,通常具有最大或接近最大数量的金属层以便获得最高密度的FPGA。但他们有一个显著的限制,就是……
相关推荐
    广告
    近期热点
    广告
    广告
    广告
    可能感兴趣的话题
    广告