Computer Architecture

60 %
40 %
Information about Computer Architecture
Education

Published on July 14, 2009

Author: ankush85

Source: authorstream.com

Why Computer Architecture is Exciting and Challenging : Why Computer Architecture is Exciting and Challenging Computer Architecture 101 : slide 2 Computer Architecture 101 Computer architects design computer systems Processors: Intel Pentium 4, IBM PowerPC Also: memory systems, interconnections, ??? Pentium cache memory memory (DRAM) bridge to I/O disk ethernet card Intro to Microarchitecture (CPS 220 in 1 slide) : slide 3 Intro to Microarchitecture (CPS 220 in 1 slide) Microarchitects design processors Goals for processors: Faster!!!! Higher bandwidth communication with memory system Backward-compatible with previous models How do we make processors faster? Faster clocks (>2 GHz) Do more work (execute instructions) at same time Intro to Multiprocessor Architecture : slide 4 Intro to Multiprocessor Architecture I design computer systems with multiple processors Node Node Node Interconnection Network Node What Multiprocessor Architects Do All Day : slide 5 What Multiprocessor Architects Do All Day How do we make processors work together? Exploit parallelism in applications Example: web server Each processor handles different requests Processors communicate occasionally to synch up Some challenges: Interconnection network design Protocols for communicating and sharing data Scalability Reliability Outline : slide 6 Outline What is computer architecture? Why is architecture exciting? Fast-paced: Technology trends Important: Prevalence of computers Why is architecture challenging? Technology Trends – Why do I Care? : slide 7 Technology Trends – Why do I Care? We design an architecture for a given technology Technology parameters: Number of transistors on a chip Transistor speed Amount of memory Memory speed Bandwidth between components Power usage Applications to be run on system All of these change dramatically over time! time parameter Technology Trends – A Few Examples : slide 8 Technology Trends – A Few Examples Number of transistors Doubles every 18 months (Moore’s Law) Memory size 1992: I bought an extra 512Kbytes for my desktop 2002: My desktop came with 512 Mbytes Power usage Pentium 4 can draw 50 amps of current and burn 50 W Important applications Word processing, spreadsheets ? multimedia, web surfing Technology Trends – Good or Bad? : slide 9 Technology Trends – Good or Bad? Pessimist: trends make designs obsolete But now I have to re-think everything I’d already solved! Optimist/Architect: trends offer opportunities What can do we do with a billion transistors? Good design ideas ?? Bad design ideas E.g., was good idea to scale up processor sizes But, it now uses too much power and is too complex What To Do With a Billion Transistors? : slide 10 What To Do With a Billion Transistors? Make the processors bigger Proc Make more little processors Proc chip chip Proc Proc Outline : slide 11 Outline What is computer architecture? Why is architecture exciting? Fast-paced: Technology trends Important: Prevalence of computers Why is architecture challenging? Prevalence of Computers : slide 12 Prevalence of Computers They’re everywhere! Desktops, laptops, cars, airplanes, ??? Optimist/Architect: More opportunities to innovate! Pessimist: we’re in trouble if: They fail They use up too much power Let’s look at these two issues now Computer Availability : slide 13 Computer Availability Availability: probability that computer works correctly More parts ? more parts that can fail How do we protect computer from failing? Redundancy (e.g., double bagging your groceries) Recovery mechanisms (e.g., “Undo” button in PowerPoint) My research explores how to detect errors and recover from them Power Usage : slide 14 Power Usage Used to just be a problem for supercomputers E.g., Cray computers came with coolant system Now it’s a problem for all computers (tech trend!) More computers using more power Outline : slide 15 Outline What is computer architecture? Why is architecture exciting? Why is architecture challenging? Difficult to evaluate solutions Inter-related with other fields Ways to Evaluate New Architectures : slide 16 Ways to Evaluate New Architectures Runtime speed Precision Ease of development & Flexibility Simulating Modeling Building Tradeoff between three desired features Building : slide 17 Building Construct a hardware prototype Advantages Way cool to show off hardware to friends Runs quickly Disadvantages Takes long time (grad student time!) to build Expensive Not flexible ? Generally too labor intensive for research studies Modeling : slide 18 Modeling Mathematically model the system Use probabilities and/or queuing models Advantages Very flexible Very quick to develop Runs quickly Disadvantages Cannot capture effects of system details Architects are skeptical of models ? Generally OK for back of the envelope estimates mem time = hit time + miss rate*penalty Simulating : slide 19 Simulating Write a program that mimics system behavior Advantages Very flexible Relatively quick to develop Disadvantages Runs slowly (e.g., 30,000 times slower than hardware) ? Method of choice for most architectural research Simulation Challenges : slide 20 Simulation Challenges Simulator Application System description Performance results Tough problems associated with each arrow! Applications to Simulate : slide 21 Applications to Simulate We care how system does on important applications But who defines “important”? (I do!) Types of applications Scientific (genomics, weather simulation, protein folding) Commercial (database, web serving, application serving) Desktop (office productivity software, multimedia) Portable (voice recognition) ??? Describing Simulated System : slide 22 Describing Simulated System How detailed must our simulator be? Model every transistor in the processor? Would take too long Abstract away details of processor organization? Could miss important effects of processor features Could achieve wrong conclusion Need balance Model in detail only where necessary E.g., I model memory system in detail, but abstract disks Performance Results : slide 23 Performance Results How do tell if our design is good? Need metrics for evaluation Performance metrics Clock speed (gigahertz)? Instructions per cycle? Database transactions per second Compare results to other published research? Can’t do it! Major problem in architecture research JIR = “Journal of Irreproducible Results” Outline : slide 24 Outline What is computer architecture? Why is architecture exciting? Why is architecture challenging? Difficult to evaluate solutions Inter-related with other fields Why Architects Need Friends : slide 25 Why Architects Need Friends Architecture is considered both computer engineering and computer science Architects interact with other areas Circuit design (Electrical Engineering) Transmission lines (EE) Power (EE, Mechanical Engineering) Compilers (Comp Sci) Operating systems (CS) Networking (EE, CS) Databases (CS) Queuing theory (CS, EE, Industrial Engineering) How Architecture Relates to Other Areas : slide 26 How Architecture Relates to Other Areas Besides these interactions, also global issues! Power, system verification, performance analysis, etc. How Architecture Relates to Hardware (EE) : slide 27 How Architecture Relates to Hardware (EE) Computer Architecture Operating Systems, Compilers, Networking Software Circuits, Wires, Network Hardware Application Software Architecture should enable efficient hardware design Avoid huge hardware structures Avoid cross-chip wires How Architecture Relates to System Software : slide 28 How Architecture Relates to System Software Computer Architecture Operating Systems, Compilers, Networking Software Circuits, Wires, Network Hardware Application Software Architecture should support system software Provide good target for compiler (unlike IA-64?) Support important OS features (such as synchronization) How Architecture Relates to User Software : slide 29 How Architecture Relates to User Software Computer Architecture Operating Systems, Compilers, Networking Software Circuits, Wires, Network Hardware Application Software Architecture should efficiently run important apps Intel added MMX hardware to support media apps Sun & IBM design multiprocessors for commercial apps Conclusions : slide 30 Conclusions Computer architecture is way cool, but not easy “If it was easy, everyone would do it.” - my Mom Students interested in architecture should: Take ECE 259 / CPS 221 in the spring Attend architecture/systems seminars in CS department Take courses in related fields

Add a comment

Related presentations

Related pages

Computer architecture - Wikipedia, the free encyclopedia

In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and implementation of computer ...
Read more

Computer Architecture - Princeton University | Coursera

Computer Architecture from Princeton University. In this course, you will learn to design the computer architecture of complex modern microprocessors. Take ...
Read more

What is Computer Architecture? - Definition from Techopedia

Computer Architecture Definition - Computer architecture is a specification detailing how a set of software and hardware technology standards interact...
Read more

Computer architecture - Simple English Wikipedia, the free ...

In computer engineering, computer architecture is the conceptual design and fundamental operational structure of a computer system. It is the technical ...
Read more

Computer Architecture

Instructor : Paul Mellies Office : 1206 Office hours : Mondays, Wednesday and Fridays from 2:30pm to 4pm Office Phone : (+86-21) 2059-5249 Mobile Phone ...
Read more

Computer architecture - Engineering - Wikia

Computer architecture is the theory behind the design of a computer. In the same way as a building architect sets the principles and goals of a building ...
Read more

Von Neumann architecture - Wikipedia, the free encyclopedia

The von Neumann architecture, also known as the von Neumann model and Princeton architecture, is a computer architecture based on that described in 1945 by ...
Read more

CS2253-Computer Organization and Architecture - NPTEL

Computer Architecture. Introduction to Computer Architecture; History of Computers; Instruction Set Architecture - I; Instruction Set Architecture - II;
Read more

Computer-Architektur - Elektronik-Kompendium.de

Computer-Architektur. Das Funktionsprinzip eines Computers wurde vom ungarischen Mathematiker John von Neumann entwickelt. Die Architektur des Von-Neumann ...
Read more

Rechnerarchitektur – Wikipedia

Gene Amdahl, Gerrit A. Blaauw und Frederick P. Brooks führten 1964 den Begriff Architecture ein, ... John P. Hayes: Computer Architecture and Organization.
Read more