Concepts Introduced in Chapter 7 Reasons for Adoption of Domain SpeciC Architectures

Total Page:16

File Type:pdf, Size:1020Kb

Concepts Introduced in Chapter 7 Reasons for Adoption of Domain SpeciC Architectures Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues Concepts Introduced in Chapter 7 Reasons for Adoption of Domain Specic Architectures End of Dennard scaling and slowing of Moore's Law means we need to lower the energy per operation to improve performance. guidelines for domain specic architectures (DSAs) If order-of-magnitude performance improvements are to be Google's Tensor Processing Unit obtained, we need to increase the number of arithmetic Microsoft's Catapult operations per instruction from one to hundreds. Google's Pixel Visual Core Conventional architecture innovations may not be a good crosscutting issues match to some domains. Many believe that future computers will consist of standard processors that can run conventional programs along with domain-specic processors that can very eciently perform only a narrow range of tasks. Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues Factors That Can Make a DSA Cost Eective DSA Guidelines Find a domain whose demand for applications is for enough Use dedicated memories to minimize the distance over which data is moved. chips to justify the nonrecurring engineering (NRE) costs. Multi-level caches are expensive in area and energy for moving DSAs are best applied for small compute-intensive kernels of data. larger systems, where a signicant fraction of the computation Many domains have predictable memory access patterns with is done for some applications. little data reuse. This means that future computers may be much more DSA programmers understand their domain. Data movement can be more ecient with software controlled heterogeneous than current homogeneous multicore chips. memories. Architects must learn the application domain and algorithms. Invest resources saved from dropping advanced There must also be support for porting software to exploit microarchitectural optimizations into more arithmetic units these DSAs. and/or larger on-chip memories. Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues DSA Guidelines (cont.) How Example DSAs Follow the Guidelines Use the easiest form of parallelism that matches the domain. Target domains for DSAs will have inherent parallelism. Need to exploit that parallelism and expose it to the software so it does not need to be automatically found by the hardware (no OoO execution). Reduce data size and type to the simplest needed for the domain. Many domains are memory bound. Can increase memory bandwidth and utilization by using narrower data types. Use a domain-specic programming language to port code to the DSA. Allow for easier exploitation of parallelism. Simplify porting of code to a DSA. Figure 7.3 The four DSAs in this chapter and how closely they followed the five guidelines. Pixel Visual Core typically has 2–16 cores. The first implementation of Pixel Visual Core does not support 8-bit arithmetic. Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues Google's Tensor Processing Unit (TPU) TPU Architecture © 2019 Elsevier Inc. All rights reserved. 4 TPU is a coprocessor on the PCIe I/O bus from which it Google's rst ASIC DSA for its WSCs. receives instructions. Domain is for deep neural networks (DNNs). Has a large software managed on-chip memory, which consists Programmed using the TensorFlow language. of a 24 MiB Unied Buer. Goal is to improve cost-performance by a factor of 10 over Has o-chip 8 GiB DRAM for Weight Memory. GPUs. Matrix Multiply Unit (MMU) contains 256x256 (65,536) ALUs that can perform 8-bit multiply-and-adds on integers. Deployed in Google data centers since 2015. Reads and writes 256 values per clock cycle. Used for matrix multiplications and convolutions. Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues TPU Block Diagram TPU ISA Has no PC as instructions are sent from the host CPU. TPU ISA contains CISC-like instructions, including a repeat eld to reduce interactions with the host CPU. example instructions Read_Host_Memory - reads data from CPU host memory into unied buer. Read_Weights - reads weights from weight memory into weight FIFO. MatrixMultiply/Convolve - causes MMU to operations on data in unied buer and produce its output to the accumulators. Activate - performs nonlinear function of the neuron from data in accumulators and stores results in unied buer. Write_Host_Memory - writes data from the unied buer into the CPU host memory. Figure 7.12 TPUIntroduction Block Diagram.Guidelines The PCIe bus isTPU Gen3 × 16. TheCatapult main computationPixel Visual part Core is the lightIssues-shaded MatrixIntroduction Guidelines TPU Catapult Pixel Visual Core Issues Multiply Unit in the upper-right corner. Its inputs are the medium-shaded Weight FIFO and the medium-shaded Unified Buffer and its outputTPU is the MMU medium-shaded Accumulators. The light-shaded Activation Unit performs the nonlinear TPU Die Floorplan functions on the Accumulators, which go to the Unified Buffer. The MMU uses a systolic array, which is a 2D collection of arithmetic units. Values ow from one© 2019 unit Elsevier to another. Inc. All rights reserved. 13 Data is only read once from memory and only written once to memory. Figure 7.14 Systolic data flow of the Matrix Multiply Unit. Figure 7.15 Floor plan of TPU die. The shading follows Figure 7.14. The light data buffers are 37%, the light computation units are 30%, the medium I/O is 10%, and the dark control is just 2% of the die. Control is much larger (and much more difficult to design) in a CPU or GPU. The unused white space is a consequence of the emphasis on © 2019 Elsevier Inc. All rights reserved. time to tape-out15 for the TPU. © 2019 Elsevier Inc. All rights reserved. 16 Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues TPU Summary Microsoft's Catapult Use dedicated memories to minimize the distance over which data is moved. Has on-chip a 24 MiB unied buer that allows accessing 256 bytes each cycle, a weight FIFO, and a 4 MiB accumulators. Microsoft placed an FPGA on a PCIe bus board in data center Invest resources saved from dropping advanced servers. microarchitectural optimizations into more arithmetic units or Used FPGA exibility to tailor use for varying applications. bigger memories. Has 28 MiB of on-chip memory and 64K FPGAs have lower NRE costs than ASICs. 8-bit ALUs. FPGAs are slower than ASICs. Use the easiest form of parallelism that matches the domain. Exploits 2D SIMD parallelism with the 256x256 MMU. Key applications were to provide a CNN accelerator and to improve the performance of the Microsoft Bing search engine. Reduce data size and type to the simplest needed for the domain. Primarily does computation on 8-bit integers. Use a domain-specic programming language to port code to the DSA. Programs to control the TPU are written in the TensorFlow language. Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues Catapult Architecture Catapult Software Programming is done in a hardware description language (e.g. Verilog). RTL code divided into shell (used across applications) and the role (application logic). Board has 32 MiB of ash memory and 8 GiB of DRAM. FPGA has 3926 18-bit ALUs, 5 MiB of on-chip memory, and 11 GB/s bandwidth to the DRAM. Designed to run at 25 W. Figure 7.20 Components of Catapult shell and role split of the RTL code. © 2019 Elsevier Inc. All rights reserved. 21 Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues Catapult CNN Accelerator Catapult Feature Extraction Accelerator Figure 7.23 The architecture of FPGA implementation of the Feature Extraction stage. A hit vector, which describes the locations of query words in each document, is streamed into the hit vector preprocessing state machine Figure 7.21 CNNIntroduction Accelerator forGuidelines Catapult. The TPUInput Volume ofCatapult the left correspondPixel to Visual Layer[ Corei− 1] onand theIssues thenleft of split Figure into Introduction control and dataGuidelines tokens. TheseTPU tokens are issuedCatapult in parallelPixel to Visual the Core43 unique Issuesfeature state machines. 7.20, with NumFM[i− 1] corresponding to y and DimFM[i− 1] corresponding to z. Output Volume at theThe top featuremaps to- gathering network collects generated feature and value pairs and forwards them to the following Free-Form Layer[i], with z mapping to NumFM[i] and DimFM[i] mapping to x. The next figure shows the inside ofExpressions the Processing stage. Element (PE).Catapult Summary Google's Pixel Visual Core © 2019 Elsevier Inc. All rights reserved. 22 Use dedicated memories to minimize the distance over which © 2019 Elsevier Inc. All rights reserved. 24 data is moved. Has 5 MiB of on-chip memory. Invest resources saved from dropping advanced microarchitectural optimizations into more arithmetic units or Google multicore design has 2 to 16 cores. bigger memories. Has 3926 18-bit ALUs. Uses much smaller area and less energy than the TPU. Use the easiest form of parallelism that matches the domain. Domain area is vision processing. Exploits 2D SIMD parallelism for the CNN application and Example of a class of DSAs called image processing units MISD parallelism for search ranking. (IPUs) that analyze and modify an input image. Reduce data size and type to the simplest needed for the domain. Does computation on 8-bit integer to 64-bit FP values. Use a domain-specic programming language to port code to the DSA. Programming is done in Verilog. Introduction Guidelines TPU Catapult Pixel Visual Core Issues Introduction Guidelines TPU Catapult Pixel Visual Core Issues Pixel Visual Core Architecture Pixel Visual Core 2D Array of PEs Uses a 2D SIMD achitecture of independent processing elements (PEs), each containing 2 16-bit ALUs, 1 16-bit MAC unit, 10 16-bit registers, and 10 1-bit predicate registers.
Recommended publications
  • Lecture 26: Domain Specific Architectures Chapter 07, CAQA 6Th Edition
    Lecture 26: Domain Specific Architectures Chapter 07, CAQA 6th Edition CSCE 513 Computer Architecture Department of Computer Science and Engineering Yonghong Yan [email protected] https://passlab.github.io/CSCE513 Copyright and Acknowledgements § Copyright © 2019, Elsevier Inc. All rights Reserved – Textbook slides § Machine Learning for Science” in 2018 and A Superfacility Model for Science” in 2017 By Kathy Yelic – https://people.eecs.berkeley.edu/~yelick/talks.html 2 CSE 564 Class Contents § Introduction to Computer Architecture (CA) § Quantitative Analysis, Trend and Performance of CA – Chapter 1 § Instruction Set Principles and Examples – Appendix A § Pipelining and Implementation, RISC-V ISA and Implementation – Appendix C, RISC-V (riscv.org) and UCB RISC-V impl § Memory System (Technology, Cache Organization and Optimization, Virtual Memory) – Appendix B and Chapter 2 – Midterm covered till Memory Tech and Cache Organization § Instruction Level Parallelism (Dynamic Scheduling, Branch Prediction, Hardware Speculation, Superscalar, VLIW and SMT) – Chapter 3 § Data Level Parallelism (Vector, SIMD, and GPU) – Chapter 4 § Thread Level Parallelism – Chapter 5 § Domain-Specific Architecture – Chapter 7 3 The Moore’s Law TrendSuperscalar/Vector/Parallel GPUs 1 PFlop/s (1015) IBM Parallel BG/L ASCI White ASCI Red 1 TFlop/s Pacific 12 (10 ) 2X Transistors/Chip TMC CM-5 Cray T3D Every 1.5 Years Vector TMC CM-2 1 GFlop/s Cray 2 Cray X-MP (109) Super Scalar Cray 1 1941 1 (Floating Point operations / second, Flop/s) 1945 100 CDC 7600 IBM 360/195
    [Show full text]
  • P1360R0: Towards Machine Learning for C++: Study Group 19
    P1360R0: Towards Machine Learning for C++: Study Group 19 Date: 2018-11-26(Post-SAN mailing): 10 AM ET Project: ISO JTC1/SC22/WG21: Programming Language C++ Audience SG19, WG21 Authors : Michael Wong (Codeplay), Vincent Reverdy (University of Illinois at Urbana-Champaign, Paris Observatory), Robert Douglas (Epsilon), Emad Barsoum (Microsoft), Sarthak Pati (University of Pennsylvania) Peter Goldsborough (Facebook) Franke Seide (MS) Contributors Emails: [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] Reply to: [email protected] Introduction 2 Motivation 2 Scope 5 Meeting frequency and means 6 Outreach to ML/AI/Data Science community 7 Liaison with other groups 7 Future meetings 7 Conclusion 8 Acknowledgements 8 References 8 Introduction This paper proposes a WG21 SG for Machine Learning with the goal of: ● Making Machine Learning a first-class citizen in ISO C++ It is the collaboration of a number of key industry, academic, and research groups, through several connections in CPPCON BoF[reference], LLVM 2018 discussions, and C++ San Diego meeting. The intention is to support such an SG, and describe the scope of such an SG. This is in terms of potential work resulting in papers submitted for future C++ Standards, or collaboration with other SGs. We will also propose ongoing teleconferences, meeting frequency and locations, as well as outreach to ML data scientists, conferences, and liaison with other Machine Learning groups such as at Khronos, and ISO. As of the SAN meeting, this group has been officially created as SG19, and we will begin teleconferences immediately, after the US thanksgiving, and after NIPS.
    [Show full text]
  • SIMD in Different Processors
    SIMD Introduction Application, Hardware & Software Champ Yen (嚴梓鴻) [email protected] http://champyen.blogspot.tw Agenda ● What & Why SIMD ● SIMD in different Processors ● SIMD for Software Optimization ● What are important in SIMD? ● Q & A Link of This Slides https://goo.gl/Rc8xPE 2 What is SIMD (Single Instruction Multiple Data) one lane for(y = 0; y < height; y++){ for(x = 0; x < width; x+=8){ //process 8 point simutaneously for(y = 0; y < height; y++){ uin16x8_t va, vb, vout; for(x = 0; x < width; x++){ va = vld1q_u16(a+x); //process 1 point vb = vld1q_u16(b+x); out[x] = a[x]+b[x]; vout = vaddq_u16(va, vb); } vst1q_u16(out, vout); a+=width; b+=width; out+=width; } a+=width; b+=width; out+=width; } } 3 Why do we need to use SIMD? 4 Why & How do we use SIMD? Image Processing Gaming Scientific Computing Deep Neural Network 5 SIMD in different Processor - CPU ● x86 − MMX − SSE − AVX − AVX-512 ● ARM - Application − v5 DSP Extension − v6 SIMD − v7 NEON − v8 Advanced SIMD (NEON) − SVE https://software.intel.com/sites/landingpage/IntrinsicsGuide/ http://infocenter.arm.com/help/topic/com.arm.doc.ihi0073a/IHI0073A_arm_neon_intrinsics_ref.pdf6 SIMD in different Processor - GPU ● SIMD − AMD GCN − ARM Mali ● WaveFront − Nvidia − Imagination PowerVR Rogue 7 SIMD in different Processor - DSP ● Qualcomm Hexagon 600 HVX ● Cadence IVP P5 ● Synopsys EV6x ● CEVA XM4 8 SIMD Optimization SIMD SIMD Framework / Software Hardware Programming Design Model 9 SIMD Optimization ● Auto/Semi-Auto Method ● Compiler Intrinsics ● Specific Framework/Infrastructure
    [Show full text]
  • An Analysis and Implementation of the HDR+ Burst Denoising Method
    Published in Image Processing On Line on 2021–05–25. Submitted on 2021–03–01, accepted on 2021–05–05. ISSN 2105–1232 c 2021 IPOL & the authors CC–BY–NC–SA This article is available online with supplementary materials, software, datasets and online demo at https://doi.org/10.5201/ipol.2021.336 2015/06/16 v0.5.1 IPOL article class An Analysis and Implementation of the HDR+ Burst Denoising Method Antoine Monod1,2, Julie Delon1, Thomas Veit2 1 MAP5, Universit´ede Paris, France ({antoine.monod, julie.delon}@u-paris.fr) 2 GoPro Technology, France ([email protected]) Abstract HDR+ is an image processing pipeline presented by Google in 2016. At its core lies a denoising algorithm that uses a burst of raw images to produce a single higher quality image. Since it is designed as a versatile solution for smartphone cameras, it does not necessarily aim for the maximization of standard denoising metrics, but rather for the production of natural, visually pleasing images. In this article, we specifically discuss and analyze the HDR+ burst denoising algorithm architecture and the impact of its various parameters. With this publication, we provide an open source Python implementation of the algorithm, along with an interactive demo. Source Code The Python implementation of HDR+ has been peer-reviewed and accepted by IPOL. The source code, its documentation, and the online demo are available from the web page of this article1. Compilation and usage instructions are included in the README.txt file of the archive. The code is also available on GitHub2. Keywords: burst denoising; computational photography; motion estimation; temporal filter- ing; high dynamic range; image signal processor 1 Introduction Image noise is a common issue in digital photography, and that issue is even more prominent in smaller sensors used in devices like smartphones or action cameras.
    [Show full text]
  • Gables: a Roofline Model for Mobile Socs
    2019 IEEE International Symposium on High Performance Computer Architecture (HPCA) Gables: A Roofline Model for Mobile SoCs Mark D. Hill∗ Vijay Janapa Reddi∗ Computer Sciences Department School Of Engineering And Applied Sciences University of Wisconsin—Madison Harvard University [email protected] [email protected] Abstract—Over a billion mobile consumer system-on-chip systems with multiple cores, GPUs, and many accelerators— (SoC) chipsets ship each year. Of these, the mobile consumer often called intellectual property (IP) blocks, driven by the market undoubtedly involving smartphones has a significant need for performance. These cores and IPs interact via rich market share. Most modern smartphones comprise of advanced interconnection networks, caches, coherence, 64-bit address SoC architectures that are made up of multiple cores, GPS, and many different programmable and fixed-function accelerators spaces, virtual memory, and virtualization. Therefore, con- connected via a complex hierarchy of interconnects with the goal sumer SoCs deserve the architecture community’s attention. of running a dozen or more critical software usecases under strict Consumer SoCs have long thrived on tight integration and power, thermal and energy constraints. The steadily growing extreme heterogeneity, driven by the need for high perfor- complexity of a modern SoC challenges hardware computer mance in severely constrained battery and thermal power architects on how best to do early stage ideation. Late SoC design typically relies on detailed full-system simulation once envelopes, and all-day battery life. A typical mobile SoC in- the hardware is specified and accelerator software is written cludes a camera image signal processor (ISP) for high-frame- or ported.
    [Show full text]
  • Euphrates: Algorithm-Soc Co-Design for Low-Power Mobile Continuous Vision
    Euphrates: Algorithm-SoC Co-Design for Low-Power Mobile Continuous Vision Yuhao Zhu1 Anand Samajdar2 Matthew Mattina3 Paul Whatmough3 1University of Rochester 2Georgia Institute of Technology 3ARM Research Abstract Haar HOG Tiny YOLO 2 SSD YOLO Faster R-CNN 10 Continuous computer vision (CV) tasks increasingly rely on SOTA CNNs 1 convolutional neural networks (CNN). However, CNNs have 10 Compute Capability massive compute demands that far exceed the performance 0 @ 1W Power Budget and energy constraints of mobile devices. In this paper, we 10 propose and develop an algorithm-architecture co-designed -1 Scaled-down 10 CNN Better system, Euphrates, that simultaneously improves the energy- -2 10 efficiency and performance of continuous vision tasks. Hand-crafted Approaches -3 Our key observation is that changes in pixel data between 10 Tera Ops Per Second (TOPS) Tera 0 20 40 60 80 100 consecutive frames represents visual motion. We first propose Accuracy (%) an algorithm that leverages this motion information to relax the number of expensive CNN inferences required by contin- Fig. 1: Accuracy and compute requirement (TOPS) comparison be- uous vision applications. We co-design a mobile System-on- tween object detection techniques. Accuracies are measured against the widely-used PASCAL VOC 2007 dataset [32], and TOPS is based a-Chip (SoC) architecture to maximize the efficiency of the on the 480p (640×480) resolution common in smartphone cameras. new algorithm. The key to our architectural augmentation is to co-optimize different SoC IP blocks in the vision pipeline col- requirements measured in Tera Operations Per Second (TOPS) lectively. Specifically, we propose to expose the motion data as well as accuracies between different detectors under 60 that is naturally generated by the Image Signal Processor (ISP) frames per second (FPS).
    [Show full text]
  • Poster/Demo Sessions Slides
    Poster/Demo Sessions Slides From RISC-V Workshop in Barcelona 7-10 May, 2018 Table of Contents for Poster/Demo Sessions Slides • Derek Atkins, Slide 3 • Eric Matthews and Lesley Shannon, Slides 47 – 48 • Mary Bennett, Slides 4 – 5 • Ekaterina Berezina and Andrey Smolyarov, • Paulo Matos, Slides 49 – 50 Slides 6 – 7 • Lucas Morais, Slides 51 – 52 • Alex Bradbury, Slide 8 • Mauro Olivieri, Slides 53 – 54 • Luca Carloni and Christian Palmiero, Slides 9 - • Aleksandar Pajkanovic, Slides 55 – 56 10 • Atish Patra, Slides 57 – 60 • Jie Chen, Slides 11 – 13 • Shubhodeep Roy, Slides 61 – 63 • Matt Cockrell, Slides 14-26 • Boris Shingarov, Slides 64 – 65 • Alberto Dassatti, Slides 27 – 28 • • Christian Fabre, Slides 29 – 30 Christoph Schulz, Slides 66 – 67 • Juan Fumero, Slides 31 – 32 • Wei Song, Rui Hou and Dan Meng, Slides 68 – 69 • Nicolas Gaude and Hai Yu, Slides 33 – 36 • Greg Sullivan, Slides 70 – 71 • Chris Jones and Zdenek Prikryl, Slides 37 – 38 • Robert Trout, Slide 72 • Felix Kaiser, Slides 39 – 40 • Vasily Varaksin and Ekaterina Berezina, Slides 73 – 74 • Alexander Kamkin and Andrei Tatarnikov, Slides • Danny Ybarra, Slides 75 – 82 41 – 42 • Simon Davidmann and Lee Moore, 83 – 87 • Luke Leighton, Slide 43 • Heng Lin, Slides 44 – 45 • Maja Malenko, Slide 46 Fast, Quantum-Resistant Secure Boot Solution For RISC-V MCUs with off-chip program stores Demo at Poster Session: Mynewt RTOS on HiFive1 development board Run-time metrics Security Verification Powered by Walnut Digital Signature Method Level Time Algorithm™ ECDSA P256 128-bit 179
    [Show full text]
  • Cloudleak: DNN Model Extractions from Commercial Mlaas Platforms
    CloudLeak: DNN Model Extractions from Commercial MLaaS Platforms Yier Jin, Honggang Yu, and Tsung-Yi Ho University of Florida, National Tsing Hua University [email protected] #BHUSA @BLACKHATEVENTS Who We Are Yier Jin, PhD @jinyier Associate Professor and Endowed IoT Term Professor The Warren B. Nelms Institute for the Connected World Department of Electrical and Computer Engineering University of Florida Research Interests: • Hardware and Circuit Security • Internet of Things (IoT) and Cyber-Physical System (CPS) Design • Functional programming and trusted IP cores • Autonomous system security and resilience • Trusted and resilient high-performance computing 3 Who We Are Tsung-Yi Ho, PhD @TsungYiHo1 Professor Department of Computer Science National Tsing Hua University Program Director AI Innovation Program Ministry of Science and Technology, Taiwan Research Interests: • Hardware and Circuit Security • Trustworthy AI • Design Automation for Emerging Technologies 4 Who We Are Honggang Yu @yuhonggang Visiting PhD. student The Warren B. Nelms Institute for the Connected World Department of Electrical and Computer Engineering University of Florida Research Interests: • Intersection of security, privacy, and machine learning • Embedded systems security • Internet of Things (IoT) security • Machine learning and deep learning with applications in VLSI computer aided design (CAD) 5 Outline Background and Motivation . AI Interface API in Cloud . Existing Attacks and Defenses Adversarial Examples based Model Stealing . Adversarial Examples
    [Show full text]
  • COEN-4730 Computer Architecture Lecture 12 Domain Specific Architectures (DSA) Chapter 7
    COEN-4730 Computer Architecture Lecture 12 Domain Specific Architectures (DSA) Chapter 7 Cristinel Ababei Dept. of Electrical and Computer Engineering Marquette University 1 1 2 1 Introduction 3 Introduction • Need factor of 100 improvements in number of operations per instruction – Requires domain specific architectures (DSAs) – For ASICs, NRE cannot be amoratized over large volumes – FPGAs are less efficient than ASICs • Video: – https://www.acm.org/hennessy-patterson-turing-lecture • Paper: – https://cacm.acm.org/magazines/2019/2/234352-a-new-golden-age-for-computer-architecture/fulltext • Slides: – https://iscaconf.org/isca2018/docs/HennessyPattersonTuringLectureISCA4June2018.pdf 4 2 Machine Learning Domain 5 5 Artificial Intelligence, Machine Learning and Deep Learning 6 6 3 Example Domain: Deep Neural Networks 7 7 Example Domain: Deep Neural Networks 8 8 4 Example Domain: Deep Neural Networks • Three of the most important DNNs: 1. Multi-Layer Perceptrons 2. Convolutional Neural Network 3. Recurrent Neural Network 9 9 1) Multi-Layer Perceptrons 10 10 5 2) Convolutional Neural Network 11 11 2) Convolutional Neural Network ◼ Parameters: ◼ DimFM[i-1]: Dimension of the (square) input Feature Map ◼ DimFM[i]: Dimension of the (square) output Feature Map ◼ DimSten[i]: Dimension of the (square) stencil ◼ NumFM[i-1]: Number of input Feature Maps ◼ NumFM[i]: Number of output Feature Maps 2 ◼ Number of neurons: NumFM[i] x DimFM[i] ◼ Number of weights per output Feature Map: NumFM[i-1] x DimSten[i]2 ◼ Total number of weights per layer: NumFM[i]
    [Show full text]
  • Review & Background
    Spring 2018 :: CSE 502 Review & Background Nima Honarmand Spring 2018 :: CSE 502 Measuring & Reporting Performance Spring 2018 :: CSE 502 Performance Metrics • Latency (execution/response time): time to finish one task • Throughput (bandwidth): number of tasks finished per unit of time – Throughput can exploit parallelism, latency can’t – Sometimes complimentary, often contradictory • Example: move people from A to B, 10 miles – Car: capacity = 5, speed = 60 miles/hour – Bus: capacity = 60, speed = 20 miles/hour – Latency: car = 10 min, bus = 30 min – Throughput: car = 15 PPH (w/ return trip), bus = 60 PPH Pick the right metric for your goals Spring 2018 :: CSE 502 Performance Comparison • “Processor A is X times faster than processor B” if – Latency(P, A) = Latency(P, B) / X – Throughput(P, A) = Throughput(P, B) * X • “Processor A is X% faster than processor B” if – Latency(P, A) = Latency(P, B) / (1+X/100) – Throughput(P, A) = Throughput(P, B) * (1+X/100) • Car/bus example – Latency? Car is 3 times (200%) faster than bus – Throughput? Bus is 4 times (300%) faster than car Spring 2018 :: CSE 502 Latency/throughput of What Program? • Very difficult question! • Best case: you always run the same set of programs – Just measure the execution time of those programs – Too idealistic • Use benchmarks – Representative programs chosen to measure performance – (Hopefully) predict performance of actual workload – Prone to Benchmarketing: “The misleading use of unrepresentative benchmark software results in marketing a computer system” -- wikitionary.com Spring 2018 :: CSE 502 Types of Benchmarks • Real programs – Example: CAD, text processing, business apps, scientific apps – Need to know program inputs and options (not just code) – May not know what programs users will run – Require a lot of effort to port • Kernels – Small key pieces (inner loops) of scientific programs where program spends most of its time – Example: Livermore loops, LINPACK • Toy Benchmarks – e.g.
    [Show full text]
  • Mempool: a Shared-L1 Memory Many-Core Cluster with a Low-Latency Interconnect
    MemPool: A Shared-L1 Memory Many-Core Cluster with a Low-Latency Interconnect Matheus Cavalcante Samuel Riedel Antonio Pullini Luca Benini ETH Zurich¨ ETH Zurich¨ GreenWaves Technologies ETH Zurich¨ Zurich,¨ Switzerland Zurich,¨ Switzerland Grenoble, France Zurich,¨ Switzerland matheusd at iis.ee.ethz.ch sriedel at iis.ee.ethz.ch pullinia at iis.ee.ethz.ch Universita` di Bologna Bologna, Italy lbenini at iis.ee.ethz.ch Abstract—A key challenge in scaling shared-L1 multi-core domains, from the streaming processors of Graphics Processing clusters towards many-core (more than 16 cores) configurations Units (GPUs) [8], to the ultra-low-power domain with Green- is to ensure low-latency and efficient access to the L1 memory. Waves’ GAP8 processor [9], to high-performance embedded In this work we demonstrate that it is possible to scale up the shared-L1 architecture: We present MemPool, a 32 bit many- signal processing with the Kalray processor clusters [10], to core system with 256 fast RV32IMA “Snitch” cores featuring aerospace applications with the Ramon Chips’ RC64 system [11]. application-tunable execution units, running at 700 MHz in typical However, as we will detail in Section II, these clusters only conditions (TT/0.80 V/25 °C). MemPool is easy to program, with scale to low tens of cores and suffer from long memory access all the cores sharing a global view of a large L1 scratchpad latency due to the topology of their interconnects. memory pool, accessible within at most 5 cycles. In MemPool’s physical-aware design, we emphasized the exploration, design, and In this paper, we set out to design and optimize the first scaled- optimization of the low-latency processor-to-L1-memory intercon- up many-core system with shared low-latency L1 memory.
    [Show full text]
  • Smartphone Huawei Senza Futuro Stop Ai Chip E Alla Licenza Android
    n.200 / 19 20 MAGGIO 2019 MAGAZINE Sony lascia il digitale Sound United compra Nella sede Dolby Windows 10: terrestre. Addio a anche Onkyo con Panasonic. Vision Microsoft dice addio Cine Sony e Pop 02 e Pioneer 04 e Atmos per tutti 16 alle app universali 20 Smartphone Huawei senza futuro Stop ai chip e alla licenza Android È ufficiale: dopo il bando di Trump a Huawei negli USA, Google toglie la licenza Android all’azienda cinese. Interrotti i rapporti anche con Intel e Qualcomm 02 OnePlus 7 Pro è ufficiale 23 Luci e ombre in anteprima Ben rifinito, solido e con fotocamera frontale a scomparsa, l’atteso top di OnePlus ha anche alcuni DJI Osmo Action aspetti che non convincono. La nostra analisi La rivale della GoPro 07 che sembra una GoPro Apple TV, rivoluzione a metà 33 La prova sui TV Samsung Completamente rivista nel design, l’app in Italia non è Renault Zoe però come Apple aveva promesso. L’abbiamo provata 10 anni dell’elettrica sugli ultimi modelli di TV Samsung insieme ad AirPlay 14 più popolare IN PROVA IN QUESTO NUMERO 25 28 30 31 Samsung QLED Q90R Sony 75” XG95 Google Pixel 3a Honor 20 Lite Non è “il solito” LCD Effetto cinema La nostra anteprima Best buy sotto la lente n.200 / 19 20 MAGGIO 2019 MAGAZINE MERCATO Google ha deciso, dopo la mossa di Trump, di revocare la licenza Android a Huawei Diritti Google toglie la licenza Android a Huawei Champions, Rapporti interrotti anche da Intel e Qualcomm Rai porta Sky in tribunale Huawei ora dovrà usare la versione opensource del sistema operativo senza le Google app Come prevedibile, la Rai ha deciso di di Roberto PEZZALI passare ai propri avvocati la decisione di Sky di non voler rinnovare l’opzione a notizia che arriva dagli States lascia per la trasmissione in chiaro della increduli: a seguito del ban da parte partita del mercoledì di Champions L di Trump di Huawei negli Usa, Goo- League per le prossime due stagioni.
    [Show full text]