smiv: a 16nm soc with efficient and flexible dnn acceleration for intelligent iot devices ·...

20
SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices Paul N. Whatmough (Arm Research / Harvard) S.-K. Lee (IBM, Harvard), S. Xi, U. Gupta, L. Pentecost, M. Donato, H.-C. Hseuh, D. Brooks and G.-Y. Wei (Harvard)

Upload: others

Post on 22-May-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices

Paul N. Whatmough (Arm Research / Harvard)S.-K. Lee (IBM, Harvard), S. Xi, U. Gupta, L. Pentecost,

M. Donato, H.-C. Hseuh, D. Brooks and G.-Y. Wei (Harvard)

Page 2: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Deep learning enables intelligent IoT devices

Making sense of sensor dataClassification/regression problems in diverse domainsMulti-modal data (sensor fusion)Unsupervised learning (e.g. anomaly detection)

Next-generation UI/UXSmall form-factor without a big screen or input deviceSpeech detection/recognition/synthesis, gaze detection, biometric authentication (e.g. face detection)Personalize interface and predict user decision-making

DNN inference on edge devicePrivacy, latency and energy issues with transmitting dataDemands a large compute and storage capability…

2

Page 3: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Closing the DNN gap on embedded devices

More efficient networks More efficient hardware

Reduced precision4x improvement from INT8 versus FP32

Data re-useDrives overall microarchitecture

Data compressionReduce mem footprint, bandwidth, and power

TransformsWinograd fast convolution (N2 not N3)

Sparse computationStatic weight pruning + dynamic ReLU activation

[Howard et al., CoRR 2017]

3

Page 4: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Efficient and flexible hardware acceleration

Architecture specializationAccelerators trade flexibility for efficiencyStill care about silicon area in embeddedDNNs pose risk of premature obsolescence

No silver bullet“Fluid” workloads suit more programmable acceleratorsAlways-on sensing and monitoring – energy limitedReconfigurable architectures – FPGA and CGRA

It’s the system, stupid!CPU interfacing and memory systems for acceleratorsAbstractions and tools to map workloads to rich SoC

4

Efficiency

Flexibility

General purpose CPUsHosts system via OS

“Accelerators”Improved perf./power

Fixed-functionEnergy limited

Page 5: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

SMIV: motivation and chip overview

SoC platform for architecture and systems research

Test chip details25mm2 die area (5mm x 5mm), TSMC 16nm FFCHalf a billion transistors, 72.2 Mbit of SRAM, 7 clocks, 5 power domainsFirst academic chip to feature Arm Cortex-A class CPUsAll-digital GHz+ on-chip clock generation and chip-chip linkCustom 672-pin flip-chip BGA package

Very short design, validation and implementation cycle7 people (4 PhDs and 3 post-docs) in about 9 months (final IP came in 6 weeks before tape out)

5

Page 6: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

SMIV: SoC platform

Cortex-A53

4 Banksx1MB SRAM

AXI4 128-bit Interconnect

CortexM0 Periph.

FPGA Bridge

AXI4 64-bit InterconnectACP

eFPGA

2x2 EFLX4K

DRAMPCIe

Cortex-A53

2MB L2

AHB 32-bit Interconnect

DNN ENGINE +SRAM

ACC0 ACC1 ACC2 ACC3

Near-Threshold Always-On Cluster

(AON)

Cache-Coherent Datapath

Accelerators (ACC)

Arm Cortex-A53 CPU Cluster

(A53)

FlexlogixEmbedded FPGA Core

(eFPGA)

6

Page 7: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Near-Threshold Always-On Cluster (AON)

Cortex-M0, peripherals and acceleratorsRuns firmware for system controlPerforms low-energy always-on tasksOptimized for robust low voltage operation

DNN ENGINE programmable classifierSecond generation design (ISSCC’17)Parallelism, data-reuse, optimized data-types, sparse computation, algorithmic resilienceModel stored in on-chip SRAMEnergy as low as 150nJ/inference for MNIST @98.5%

[Lee et al., ESSCIRC’18]

7

Page 8: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Arm Cortex-A53 CPU clusterHigh efficiency embedded processorMature product with high volume

In-order pipelineLower power consumption

Extensive dual-issue capabilityIncreased peak instruction throughput via dual instruction decode and execution

Advanced branch predictorIncreased branch hit rate with 6Kb Conditional Predictor and 256 entry indirect predictor

Extensive power-saving featuresHierarchical clock gating, power domains, advanced retention modes

8

Page 9: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Accelerator coherency port (ACP)

Efficient accelerator interfacingAvoids CPU cache flush when accessing cached dataCoherent memory simplifies programming modelVery low hardware cost for accelerator

Enables fine grained datapath accelerationFocus on accelerating key composable kernelsIncreases flexibility…

Cache a larger working set in L2Workload dependent - your mileage may varyExploit lower energy of uncached loads (e.g. FC weights)

9

System interconnect

Main memory

CPU

L1 cache

L2 cache

CPU

L1 cacheAccelerator

SRAM SRAM SRAMACP

Page 10: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Cache-Coherent Datapath Accelerators (ACC)

Modeled and implemented using high-level synthesis (HLS) methodology

10

FC

CONV

REDUCTION

DMAEngine

MMIO

Control/Sequencer

SoC AXI4 Master

CPU ACP Master

SoC AXI-Lite Slave

CPU IRQ

Unified SRAM(2x 64KB)

Page 11: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Flexlogix embedded FPGA (eFPGA)

Embedded FPGA IPEfficient interconnect enables density and scalabilityDensity & performance similar to full custom FPGA

Scalable and flexible array size and layoutLogic tile: 2,520 LUT6 + 21 kbits distributed memDSP tile: 40 22b hardware MACs + 1,880 LUT6

SMIV contains a 2x2 eFPGA array2x logic tiles and 2x DSP tilesTotal ~9,000 LUT6 logic, 80 hardware MACs, 44kbits RAMAttached as a first-class citizen on the SoC interconnect

11

Page 12: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

SMIV in action

Initial silicon bring up successfulAll pre-silicon tests passedOff-chip interface to FPGA board working, providing DRAM main memory and peripheralseFPGA programming fully-functional

Using SMIV SoC platform for researchScheduling accelerators sharing L2 over ACPeFPGA as first class citizen on an SoCIncremental wakeup from AON sub-systemReal applications!

12

Page 13: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

SMIV measured efficiency

Measured on representative DNN kernels

Energy efficiency range is >10x CPU to fixed-function AONThis also spans the whole flexibility spectrumAON will not benefit from new algorithm advanceseFPGA is 4.5x energy efficiency of CPUs

Area efficiency heavily impacted by SRAMImportant to share on-chip SRAM resources efficientlyACP allows accelerators to use large L2 cacheeFPGA has the area overhead of reconfiguration

13

Energy efficiency

Area efficiency

Page 14: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Rapid SoC design and implementation

DARPA program - Circuit Realization at Faster Timescales (CRAFT)7 people (4 PhDs and 3 post-docs) in about 9 months (final IP came in 6 weeks before tape out)

How did we make a complex SoC in a short timescale?Industry strength IP, interface standards and software eco-systemArm Socrates tool for rapid iteration on SoC integration and IP configurationScripted methodologies for generating memory-mapped registers, IO pad-ring, clock domains etc.No custom layout - entirely std-cells + SRAM, including clock generation and off-chip link PHYHigh-level synthesis (HLS) from a SystemC design, using Nvidia methodology

Minimize the long tail of validation and timing closure

14

Page 15: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Arm research enablement offerings

SoC HW/SW co-development with DesignStartDesignStart Eval - Cortex M0/ M3 based systems, evaluation with obfuscated RTLDesignStart Pro Academic - Cortex M0/ M3 based systems, RTL for SoC design

Compute systems modelling and architecture explorationGem5 - CPU and system modelling

IP Building blocks*Design IP – CPUs, Interconnects, peripheralsPhysical IP – Standard cells, Memory compilers, POP IP

www.arm.com/resources/research/enablement*Any logic Arm IP that is not part of DesignStart will be provided on a case by case basis, depending on the research project scope, objectives and alignment with Arm research agenda

15

Page 16: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Summary

Deep learning on edge devices is driving new IoT use casesEfficient and flexible DNN accelerationIt’s the system, stupid!

SMIV - a 16nm SoC platform for architecture and systems researchFirst academic chip to feature Arm Cortex-A class CPUsNear-threshold always-on clusterCache-coherent multi-core datapath accelerators with ACP attachEmbedded FPGA cluster

Rapid SoC design and implementation

16

Page 17: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Acknowledgments

We are very grateful to our sponsors, including the DARPA PERFECT and CRAFT programs, and to Arm, Flex Logix and TSMC for IP support

17

Page 18: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

18

Page 19: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

Challenges with DNN inference

ComputeModels demand billions of MACs per inferenceAlmost all operations are in convolution layersHigh frame rates push requirement to > 1TOP/s

StorageSome models require 100s MB weight storageMajority of weights are in dense layersKey consideration for deeply embedded

PowerTight thermals and battery constraints in mobileReading 1TB/s from SRAM consumes over 1W

MobileNet v1

GoogLeNet

Squeezenet v1

AlexNet

Inception V3 [18]Inception-v4

Inception-ResNet-v2

ResNet-50

ResNet-152

VGG 16 VGG 19

50%

55%

60%

65%

70%

75%

80%

85%

90%

- 5,000 10,000 15,000 20,000 25,000

Top-

1 ac

cura

cy (%

)

M-MACs

Accuracy (Y-axis) vs MACs (X-axis) & Number of Parameters (bubble size)

MobileNet v1

GoogLeNet

Squeezenet v1

AlexNet

Inception V3 [18]

Inception-v4

Inception-ResNet-v2

ResNet-50

ResNet-152

VGG 16

VGG 19

19

Page 20: SMIV: A 16nm SoC with Efficient and Flexible DNN Acceleration for Intelligent IoT Devices · 2018-08-20 · Deep learning on edge devices is driving new IoT use cases. Efficient and

eFPGA SoC integration

Embedded FPGA cluster attached as a first-class citizen in the SMIV SoC

20