Yahoo Web Search

Search results

  1. A Practical Introduction to Computer Architecture Daniel Page dan@phoo.org git # 8b6da880 @ 2023-09-27

    • CS/ECE 752 Course Overview Why Study Computer Architecture?
    • Some Course Goals
    • Exams
    • Safety Windows
    • Computers
    • Design Goals / Constraints
    • SRAM DRAM
    • Reliability Cost/Manufacturability Energy Efficiency Time to Market
    • Layers of Abstraction
    • Microarchitecture
    • Layers of Abstraction
    • Technology as a Driver “Technology”
    • Revolution II: Implicit Parallelism
    • Revolution III: Explicit Parallelism
    • Revolution IV: Specialization
    • CPU
    • Layers of Abstraction
    • Applications as a Driver Applications Views
    • Domain-centric View

    Understand where computers are going Future capabilities drive the computing world Forced to think 5+ years into the future Exposure to high-level design Less about “design” than “what to design” Engineering, science, art Architects paint with broad strokes The best architects understand all the levels Devices, circuits, architecture, compilers, ap...

    Exposure to “big ideas” in computer architecture Pipelining, parallelism, caching, locality, abstraction, etc. Exposure to examples of good (and some bad) engineering Understanding computer performance and metrics Empirical evaluation Understanding quantitative data and experiments “Research” exposure Read research literature (i.e., papers) Researc...

    Electronic exams on Canvas Focusing on thinking more deeply about the questions, and put together well thought-out responses. Emphasizes reasoning/argumentation over memorization. Exam Content: Will be similar to prior exams: mix of essays and problem solving. Topic fair game: anything discussed in class or in readings. Questions may be about a new...

    Construction Ease of Construction Walls Energy Efficiency Doors Fast Build Time Flooring Aesthetics Water Pipes Air Conditioners/Ducts

    Desktops Servers Mobile Phones Supercomputers Game Consoles Embedded

    Functional Needs to be correct And unlike software, difficult to update once deployed Security: Should provide guarantees to software Reliable Does it continue to perform correctly? Hard fault vs transient fault Space satellites vs desktop vs server reliability High performance Not just “Gigahertz” – truck vs sports car analogy Generality “Fast” is...

    Servers Mobile Phones Circuit Techniques Packaging Storage Components Supercomputers

    Absolute improvement, different rates of change New application domains enabled by technology advances

    Architects need to understand computers at many levels Applications Operating Systems Compilers Instruction Set Architecture Microarchitecture Circuits Technology Good architects are “Jacks of most trades” Layers of Abstraction Compute sub ld add br ld + -ф ISA: Hardware/ Software Interface Microarchitecture Applications Technology Architects’ Doma...

    Emphasis is on overcoming sequential nature of programs Deep pipelining Multiple issue Dynamic scheduling Branch prediction/speculation Up-the-stack Implement instruction set -- constrained by the ISA Application behaviors make themselves apparent in microarchitecture Down-the-stack Exploit circuit technology Be aware of physical constraints (power...

    Compute sub ld add br ld - + ф ISA: Hardware/ Software Interface Microarchitecture Applications Technology

    Basic element Solid-state transistor (i.e., electrical switch) Building block of integrated circuits (ICs) What’s so great about ICs? Everything gate source channel High performance, high reliability, low cost, low power Lever of mass production drain Several kinds of IC families SRAM/logic: optimized for speed (used for processors) DRAM: optimized...

    Then to extract implicit instruction-level parallelism Hardware provides parallel resources, figures out how to use them Software is oblivious Initially using pipelining ... Which also enabled increased clock frequency ... caches ... Which became necessary as processor clock frequency increased ... and integrated floating-point Then deeper pipeline...

    Support explicit data & thread level parallelism Hardware provides parallel resources, software specifies usage Why? diminishing returns on instruction-level-parallelism First using (subword) vector instructions..., Intel’s SSE One instruction does four parallel multiplies ... and general support for multi-threaded programs Coherent caches, hardwar...

    Combine implicit/explicit parallelism with a focus on a particular domain Scope can be very different: GPGPUs are quite broad, while TPUs are not... Tradeoff the overheads of supporting “general purpose” workloads for efficiency on a smaller set of workloads. But why is this happening now? Dark silicon – not all components of a chip can be kept ac...

    (“Ordinary” Apps) Graphics Proc. Unit (GPU) Digital Signal Proc. (DSP) Filed Prog. Gate Array (FPGA) Google TPU: (Deep Learning)

    Compute sub ld add br ld - + ф ISA: Hardware/ Software Interface Microarchitecture Applications Technology

    Many ways to view distinction between application settings: Deployment-centric view: Where the machine is deployed affects the set of applications Domain-centric view: Set applications from a similar background Property-centric view: Set of applications with different properties

    Old Dichotomy: Scientific: weather prediction, genome sequencing First computing application domain: naval ballistics firing table Need: large memory, heavy-duty floating point Examples: CRAY T3E, IBM BlueGene Commercial: database/web serving, e-commerce Need: data movement, high memory + I/O bandwidth Examples: Sun Enterprise Server, AMD Opteron, ...

    • 1MB
    • 67
  2. Introduction to Computer Architecture Welcome to the exciting world of computer architecture. Computer architecture is the study of computers. We shall study the basic design principles of computers in this book including the basic technologies, algorithms, design methodologies and future trends.

  3. Clock period = 12ns (50ns / 5 stages) + overheads. Optimistic Model: CPI = 1 (each insn takes 5 cycles, but 1 completes each cycle) Performance = 12ns/insn. Realistic Model: (adds pipeline penalty) CPI = 1.5 (on average insn completes every 1.5 cycles) Performance = 18ns/insn. Much higher performance than single-cycle or multi-cycle.

  4. Von Neumann Architecture. Description of generic computer Computer organization independent of problem Memory Intermediate results Stored programs Organized in homogeneous cells Linearly addressed (data and program) Program counter in "central control" points to next instruction. Input Device. Central Control. Central Arithmetical.

  5. Computer Science 146 David Brooks Topics of Study • Focus on what modern computer architects worry about (both academia and industry) • Get through the basics of modern processor design • Understand the interfaces between architecture and system software (compilers, OS) • System architecture and I/O (disks, memory, multiprocessors)

  6. People also ask

  7. To get the most out of a computer system with internal or external parallelism, designers and software developers must understand the interaction between hardware and software parts of the system.

  1. People also search for