Efficient Processing of Deep Neural Networks (A Tutorial and Survey)

Efficient Processing of Deep Neural Networks: A Tutorial and Survey

​ 这是一篇有关于深度神经网络加速的综速。本文介绍了DNN的历史背景和作用,介绍的DNN的结构以及当前流行的DNN模型。后面不仅仅介绍了如何从硬件层面加速神经网络,也介绍了从算法,从软件,从软硬件结合的层面实现DNN加速。

阅读更多

Is Dark Silicon Useful

暗硅(Dark Silicon)

Is Dark silicon useful?

​ 暗硅的意思就是一个处理器,比如多核处理器,由于功耗的限制,其实同一时刻只有很少的一部分门电路能够工作,其余的大部分处于不工作的状态,这部分不工作的门电路就叫做”暗硅“。

​ 如下图所示,可以很好地解释暗硅是怎么产生的。

对于一个65nm的4核处理器,假定在额定功率允许的情况下其四个核心能够同时全速工作。当工艺尺寸缩小到32nm的时候,之前4核处理器的面积就可以容纳16个核心。但现实是,这16个核心并不会都工作。能够同时工作的仍然只有四个核心。为什么?假设两代工艺之间缩放因子是S,那么S=65nm/32nm=2,芯片的晶体管数量将乘以$S^2$,即4倍;晶体管的切换频率可以乘以$S$,即2倍,因此总的计算能力将乘以$S^3$,即8倍。由于特征尺寸减小了一半,故晶体管的电容将减小S倍。由于总功耗与晶体管数量和切换频率成正比,和电容成反比,总功耗将变成之前的$S^2$倍,即4倍。为了保持总功耗不变,芯片的利用率只能变为原来的$\frac{1}{S^2}$,即原来的1/4。所以即使有16个核,仍然只有4个核可以工作。

其中,工艺尺寸缩小分为两种,一种是Dennardian缩小,一种是PostDennardian缩小。两者的区别是Dennardian缩小随着工艺尺寸的缩小,芯片的供电电压等比例缩小。而PostDennardian缩小随着工艺尺寸的缩小,芯片的供电电压保持不变。对于Dennardian缩小,同样的面积能够容纳的晶体管数量增大了$S^2$倍,系统频率也增加$S$倍,而供电电压降低了$S^2$倍,电容也减少了$S$倍,总功耗保持不变。由此摩尔定律可以有$S^3$倍计算能力的提高,而PostDennardian缩小由于其供电电压不变,所以总功耗增大了$S^2$倍,为了保持总功耗不变,芯片利用率只能变为原来的$\frac{1}{S^2}$,即原来的1/4,所以摩尔定律只能有$S$倍计算能力的提高。总结上述的情况,暗硅产生的原因就是随着现在芯片尺寸的不断减小,芯片的供电电压不能随着一起降低,为了保持总功耗不变,现在工业界常采用面积来换取能量效率,出现了多核芯片,但芯片中能同时满频率工作的面积依然越来越小,由此产生的暗硅。

​ 文中指出了暗硅四骑手:

(1)THE SHRINKING HORSEMAN

主要思想就是因为面积昂贵,所以希望制造更小的芯片而移除掉暗硅的部分。这是一个很乐观的结果,但前景并不被人看好。原因有:暗硅并不表示它没有用或者不会被用到,它只是不会在任何时候都工作,比如如x86处理器中的SIMD SSE单元;从经济学上考虑,硅片成本其实只占芯片成本很小的一部分,封装测试,营销销售,支持维护等其他费用才是大头;商家并不愿意为了减少芯片面积而去牺牲性能;功率密度提高带来的芯片散热问题。

(2)THE DIM HORSEMAN

主要思想是用”弱硅“来替代”暗硅“,就是使用仅在一部分时间内使用的逻辑来填充暗硅区域。其中的技术有:

  • 近阈值电压(NTV)处理器:单个处理器性能下降比节省的能耗更多,但多个处理器并行可以弥补性能损失。任务并行量越大,收益越高。问题在于NTV技术下随机掺杂波动(RDF)导致晶体管阈值电压变化、工作频率变化,鲁棒性下降(如SIMD),以及大量低速处理器和SRAM间互连会增大功耗。

  • 更大的Cache(缓存):即将暗硅区域用于高速缓存即可以提升性能有节省能耗。但随着低功耗片外接口和3D集成存储器的出现,片上高速缓存的优势在下降。

  • 粗粒度可重配置阵列(CGRA):拥有针对字级操作的优化路径,比FPGA的长线路能耗更低。

  • 计算冲刺和自动超频:临时升温但保持在温度极限以此提高性能;使用相变材料使得芯片在亚秒级的时间内可以超过温度限制。

(3)THE SPECIALIZED HORSEMAN

相对于功耗和能耗,硅面积已经成为更廉价的资源,用面积来购买能源效率,在暗硅上实现一系列的专用协处理器,这些专业协处理器/加速器可以提高能源效率和性能的数量级,尤其对于高并行计算。但是软硬件之间协调、兼容困难,且因标准更改而被淘汰。由此需要指定可扩展的硬件标准,满足低功耗高性能的要求,同时降低软硬件设计的复杂度;克服Amdahl定律的限制:对规则并行代码和非规则代码都进行专用化方法。

(4)THE DEUS EX MACHINA HORSEMAN

使用新的半导体器件:基于隧道效应的隧道场效应晶体管(TFETS),以及基于纳米机电开关((Nano-Electro-Mechanical switch)),它们基于物理交换机。

硬件加速器背景介绍(Lecture1)

硬件加速器背景

​ 如今计算能力限制了训练机器学习模型的工作,如果我们有更快的处理器我们可以运行更大的模型。

现有的机器学习加速器
  • CPU:线程、SIMD(单指令多数据流)
  • GPU:大量线程、SIMD、HBM(高带宽存储器)
  • FPGA:LUTs(查找表)、DSP、BRAM
  • TPU:MM Unit、BRAM
阅读更多

机器学习背景介绍(Lecture2)

机器学习简介

​ 本节主要学习一些机器学习算法,部分算法研究在《智能计算系统》的学习中有所接触,还学习机器学习相关技术和常见的计算模式,从而帮助加速器设计人员高效地将这些模式应用于硬件。

阅读更多

Roofline and TPU Performance

Roofline and TPU Performance

​ 任何模型都必须依赖具体的计算平台才能展示出自己真正的实力。从前,许多的性能模型和模拟器都是通过追踪延迟来预测性能,近二十年也诞生了一些隐藏延迟的技术,例如:乱序执行(硬件发现并行性以隐藏延迟);硬件流预取(硬件推测加载数据);大规模线程并行。这些技术有效地隐藏了延迟,但同时也使得计算平台从延迟受限转变为了吞吐量受限。

​ Roofline模型是一个吞吐量指向的性能模型,它追踪速度而不是时间。也可以这么说说Roof-line Model就是:模型在一个计算平台的限制下,到底能达到多快的浮点计算速度。通俗来讲是”计算量为A且访存量为B的模型在算力为C且带宽为D的计算平台所能达到的理论性能上限E是多少“这个问题。Roofline模型有两个关键部分:一个是机器参数,第二个是应用的理论编辑。

阅读更多

Why Systolic Architectures?

Why Systolic Architectures?

为什么要设计脉动阵列这样的架构?

  • Simple and regular design(简单和规则的设计)

​ 首先就是成本效益一直是专用系统的关注点,由于一个专用系统的功能往往十分有限,所以就需要它的成本足够低来弥补这一劣势。而其成本又被分为设计成本和器件成本。由于集成电路技术的进步,器件成本正在迅速下降,所以关键因素还是设计成本。所以采用脉动阵列这个简单又规则的硬件架构,可以很快地完成芯片的设计和实现。

阅读更多

《智能计算系统》第一章

第一章 概述

1.1 人工智能

1.1.1 什么是人工智能

人制造出来的机器表现出来的智能,就是人工智能

人工智能大致分为两类:弱人工智能和强人工智能。

弱人工智能是能够完成某种特定任务的人工智能,而强人工智能是具备与人类同等智慧,或超越人类的人工智能,能表现出正常人所具有的所有智能行为。

阅读更多

《智能计算系统》第二章

第2章 神经网络基础

引:神经网络是一种机器学习算法

2.1 从机器学习到神经网络

2.1.1 基本概念

​ 人工智能、机器学习、神经网络、深度学习之间的关系:

机器学习:计算机通过不断地从经验或数据中学习来逐步提升智能处理能力。

阅读更多

《智能计算系统》第三章

第三章 深度学习

3.1 卷积神经网络

​ 在做图像处理时,如果采用全连接前馈神经网络来识别,会出现权重参数过多的现象,随着隐层神经元数量的增多,参数的规模也会急剧增加,从而导致整个神经网络训练效率非常低,也很容易出现过拟合。

​ 而采用卷积神经网络可以很好地解决上述问题,卷积神经网络是一种具有局部连接、权重共享等特性的深层前馈神经网络。这些特性使得卷积神经网络具有一定程度上的平移、缩放和旋转不变性,从而使得卷积神经网络的参数更少。

阅读更多

《智能计算系统》第四章

第四章 编程框架的使用

4.1 TensorFlow编程模型及基本用法

​ 在程序开发中,根据解决问题的不同思路,通常采用两种不同的编程方式,常见的编程方式有两种:命令式编程和声明式编程。

​ 命令式编程:关注程序执行的具体步骤,计算机按照代码中的顺序一步一步地执行具体的运算,整体优化困难。比如交互式UI程序和操作系统。

​ 声明式编程:告诉计算机想要表达的目标,不指定具体的实现步骤,而是通过函数、推理规则等来描述数据之间的关系,优化比较容易。比如人工智能和深度学习。

阅读更多
Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×