graphcore——graphcore北京地址?

2023-02-12 20:02 25次浏览 财经

选自The Next Platform

作者:Nicole Hemsoth

机器之心编译

参与:侯韵楚、黄小天、李泽南

两年来,我们推出了一系列专为处理神经网络的训练及推理而设计的深度学习结构。我们广泛并购投资或并购,但仅有少部分人看出了要点——收购一年多前推出的 Nervana 系统。

在众多神经网络芯片的初创公司中,Graphcore 凭借处理同一块多核芯片上的训练及推理问题的多核方法而鹤立鸡群。我们在三月份详述了其硬件架构(详情参阅机器之心报道:深度学习芯片公司 Graphcore 初探:颠覆 GPU、FPGA 和 CPU 的新一代处理器 IPU)。尽管众所周知 Graphcore 从 Series A 融资 3000 多万美元,但它现今被公开认为戴尔才是其背后金主。戴尔技术资本、博世、三星以及其他投资者已将 Graphcore 推过了 3200 万美元大关。考虑到戴尔,Graphcore 首席执行官兼联合创始人 Nigel Toon 认为他们将通过戴尔的 OEM、渠道以及产品整合能力实现深入发展。

鉴于今天的这则消息,我们希望折回到 3 月份所提供的最初的硬件深入研究中,并关注 Graphcore 所提供的另一层面——软件堆栈。在 Graphcore 以 PCIe 为基础的硬件中,对处于核心位置的定制开发型 IPU 处理器而言,在同一台设备上进行训练抑或推理都属于艰巨的任务。

正如 Toon 对 The Next Platform 所言,深度学习框架正在从数据中获取知识模型,并且通过计算图来表示这些特征是最佳途径。在某种程度上,所有机器学习框架的核心都是将全部内容转化为图形,而这些图形的边缘和顶点可以表示特征之间的相关性和连接性。它们可能会将连接表征为单标量权重、矩阵抑或描述关系或特征集的张量。因此,应用其能够反映格式的硬件设备来使图形更加明确地表征这个概念不无道理。它变成了与采取深度学习框架相似的问题,并将其「引爆」以显示所有的边缘和顶点,然后划分图形来将问题映射至芯片上的多核,并控制这些处理器之间的通信,从而使它们拥有所需的数据。很简单,对不对?

但事实证明它十分棘手,然而 Graphcore 利用 Poplar 软件框架逐渐解决了这个引爆、划分、映射与通信问题。

Poplar 驱动一个以 PCIe 为接口的 16 个处理器的 Graphcore IPU 组件,它需要开发人员在 TensorFlow 中启动(这个团队正致力于将库和支持机制扩展到其他框架),随后构建所需训练的神经网络的描述(设定参数等)。Poplar 插入了 Graphcore 所开发的许多库元素之一(类似于英伟达为其 GPU 提供的 cuDNN 元素),并插入诸如卷积或不同的基元来取代 TensorFlow 中编写的高级描述。随后它会通过将它们扩展为完整而复杂的图形「引爆」这些图形的边和顶点。这款软件能够对处理元件和内部通信资源进行映射和划分,因此它能够处理图形并创建可以馈送至处理器的程序。

真正的难题是,所有处理器都必须拥有所需的全部数据。而 Poplar 的目的便是采取更多诸如 TensorFlow 做出的抽象图形描述,将它们展开为包含全部边缘和顶点的整体图,而后分解为可以分配到处理元素中的工作包。

Graphcore 芯片最初令人着迷的一点便是能够在同一块硬件上进行高效训练和推理。Toon 告诉我们,实际上实现这一点并未涉及任何功能广泛的软件,它更像对深度神经网络问题采用图形功能。Toon 解释道:「学习便是构建图表并进行优化以确立正确的答案、预测、推理以及判断,并且它们都只是图形中不同的优化任务。根本来说,它们都属于相同的计算。它们在执行时需要的计算量可能不同,但总体而言十分相似。如果我有一块可以连接在一起并使用多个处理器来进行速度训练的计算硬件,那么我可以使用其他处理器在不同的时间进行部署或推断;只要设计的处理器不必以特定的方式进行调整和控制来实现高性能,这便可能实现。」

真正困难的是改变与维护那些目前支持的库,以及那些随着新型神经网络方法的出现而逐渐过时的库。Toon 认为主要框架大多仅仅是 API 级别的问题,但团队将需要对新型的未来库施以例行的深入维护。

这家公司将在今年推出一个 Graphcore 堆栈的云技术版本。我们应该关注它的早期使用情况,看看这个高度定制化的处理环境能为 GPU、FPGA 甚至是少数仅有 CPU 的训练及推理任务带来什么。

相关推荐