Digital Design & Computer Arch. L2: Tradeoffs, Metrics, Mindset

namu·2024년 5월 16일
0

Data is Key for AI, ML, Genomics, ...

  • Important workloads are all data intensive
  • They require rapid and efficient processing of large amounts of data
  • Data is increasing
    -- We can generate more than we can process

Data is Key for Future Workloads
In-memory Databases
Graph/Tree Processing
In-Memory Data Analytics
Datacenter Workloads

Data -> performance & energy bottleneck

Data Movement Overwhelms Modern Machines
62.7% of total system energy is spent on data movement
'>'90% of the total system energy is spent on memory in large ML models
Google Workloads for Consumer Devices:
Mitigating Data Movement Bottlenecks

Data Movement vs. Computation Energy
Communication Dominates Arithmetic

A memory access consumes ~100-1000X the energy of a complex addition.
A memory acesss consumes 6400X the energy of a simple integer addition.

Many Novel Concepts Investigated Today

  • New Computing Paradigms (Rethinking the Full Stack)
    -- Processing in Memory, Processing Near Data
    -- Neuromorphic Computing, Quantum Computing
    -- Fundamentally Secure and Dependable Computers
  • New Accelerators & Systems (Algorithm-Hardware Co-Designs)
    -- Artificial Intelligence & Machine Learning
    -- Graph & Data Analytics, Vision, Video
    -- Genome Analysis
  • New Memories, Storage Systems, Interconnects, Devices
    -- Non-Volatile Main Memory, Intelligent Memory Systems, Quantum
    -- High-Speed Interconnects, Disaggregated Systems

Increasingly Complex Systems
Past systems
Microprocessor <-> Main Memory <-> Storage (SSD/HDD)
Modern systems
FPGAs
Heterogeneous Processors and Accelerators
(General Purpose) GPUs
<->
Hybrid Main Memory
<->
Persistent Memory/Storage

Increasingly Complex Systems on Chip
8-Core GPU
SLC Cache
4 Firestorm Perf Cores +12MB L2
16-Core Neural Engine
4 Icestorm Efficiency Cores +4MB L2
8x 16b LPDDR4X Channels

Computer Architecture Today

  • Computing landscape is very different from 10-20 years ago
  • Applications and technology both demand novel architectures
    Every component and its interfaces, as well as entire system designs are being re-examined

Computer Architecture Today (2)

  • You can revolutionize the way computers are built, if you understand both the hardware and the software (and change each accordingly)
  • You can invent new paradigms for computation, communication, and storage
  • Recommended book: Thomas Kuhn, "The Structure of Scientific Revolutions" (1962)
    -- Pre-paradigm science: no clear consensus in the field
    -- Normal science: dominant theory used to explain/improve things (business as usual); exceptions considered anomalies
    -- Revolutionary science: underlying assumptions re-examined

Takeaways

  • It is an exciting time to be understanding and designing computing architectures
  • Many challenging and exciting problems
    -- That no one has tackled (or thought about) before
    -- That can have huge impact on the world's future
  • Driven by explosion of data, new applications (ML/AI, graph analytics, genomics), ever-greater realism, ...
    -- We can easily collect more data than we can analyze/understand
  • Driven by significant difficulties in keeping up with that hunger at the technology layer
    -- Five walls: Energy, reliability, complexity, security, scalability

Takeaways

  • It all starts from the basic building blocks and design principles
  • And, knowledge of how to use, apply, enhance them
  • Underlying technology might change(e.g., steel vs. wood)
    -- but methods of taking advantage of technology bear resemblance
    -- methods used for design depend on the principles employed

The Same Applies to Processor Chips

  • There are basic building blocks and design principles
    AMD Barcelona 4 cores
    Intel Core i7 8 cores
    IBM Cell BE 8+1 cores
    IBM POWER7 8 cores
    Sun Niagara 2 8 cores
    Nvidia Fermi 448 "cores"
    Intel SCC 48 cores, networked
    Tilera TILE Gx 100 cores, networked

TESLA Full Self-Driving Computer (2019)

  • ML accelerator: 260 mm2, 6 billion transistors, 600 GFLOPS GPU, 12 ARM 2.2 GHz CPUs.
  • Two redundant chips for better safety.

Basic Building Blocks

  • Electrons
  • Transistors
  • Logic Gates
  • Combinational Logic Circuits
  • Sequential Logic Circuits
    -- Storage Elements and Memory
  • ...
  • Cores
  • Caches
  • interconnect
  • Memories
  • ...

Recall: High-Level Goals of This Course

  • In Digital Design & Computer Architecture
  • Understand the basic
  • Understand the principles (of design)
  • Understand the precedents
  • Based on such understanding:
    -- learn how a modern computer works underneath
    -- evaluate tradeoffs of different designs and ideas
    -- implement a principled design (a simple microprocessor)
    -- learn to systematically debug increasingly complex systems
    -- Hopefully enable you to develop novel, out-of-the-box designs
  • The focus is on basics, principles, precedents, and how to use them to create/implement good designs

Recall: Why These Goals?

  • Because you are here for a Computer Science degree!
  • Regardless of your future direction, learning the principles of digital design & computer architecture will be useful to
    -- design better hardware
    -- design better software
    -- design better systems
    -- make better tradeoffs in design
    -- understand why computers behave the way they do
    -- solve problems better
    -- think "in parallel"
    -- think ciritically
    -- ...
profile
안녕하세요

0개의 댓글