DOC PREVIEW
Berkeley COMPSCI 152 - Performance and The Design Process

This preview shows page 1-2-3-4-5 out of 15 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 15 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

February 4, 2004John Kubiatowicz (www.cs.berkeley.edu/~kubitron)lecture slides: http://www-inst.eecs.berkeley.edu/~cs152/CS152Computer Architecture and EngineeringLecture 4Performance andThe Design Process2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.2Review: Combinational Elements+DeMorgan Equivalence NAND GateNOR GateOutABABOutABOut11100011011 0ABOutOutABOut = A • B = A + B Out = A + B = A • BABOut00 101 010 011 0ABOut11 110 101 100 000011011ABABOut11 110 001 000 000011011ABWire InverterIn Out0101In Out1001OutInDeMorgan’sTheoremOut = In Out = In2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.3Review: recall General C/L Cell Delay Model° Combinational Cell (symbol) is fully specified by:• functional (input -> output) behavior- truth-table, logic equation, VHDL• load factor of each input• critical propagation delay from each input to each output for each transition- THL(A, o) = Fixed Internal Delay + Load-dependent-delay x load ° Linear model composesCoutVoutABX...CombinationalLogic CellCoutDelayVa -> VoutXXXXXXCcriticalInternal Delaydelay per unit load2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.4Storage Element’s Timing Model° Setup Time: Input must be stable BEFORE trigger clock edge° Hold Time: Input must REMAIN stable after trigger clock edge° Clock-to-Q time:• Output cannot change instantaneously at the trigger clock edge• Similar to delay in logic gates, two components:- Internal Clock-to-Q- Load dependent Clock-to-QDQD Don’t CareDon’t CareClkUnknownQSetupHoldClock-to-Q2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.5Critical Path & Cycle Time° Critical path: the slowest path between any two storage devices° Cycle time is a function of the critical path° must be greater than:Clock-to-Q + Longest Path through Combination Logic + SetupClk............2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.6The Design Process"To Design Is To Represent"Design activity yields description/representation of an object-- Traditional craftsman does not distinguish between the conceptualization and the artifact-- Separation comes about because of complexity-- The concept is captured in one or more representation languages-- This process IS designDesign Begins With Requirements-- Functional Capabilities: what it will do-- Performance Characteristics: Speed, Power, Area, Cost, . . .2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.7Design Process (cont.)Design Finishes As Assembly-- Design understood in terms ofcomponents and how they havebeen assembled-- Top Down decomposition ofcomplex functions (behaviors)into more primitive functions-- bottom-up composition of primitivebuilding blocks into more complex assembliesCPUDatapath ControlALU Regs ShifterNandGateDesign is a "creative process," not a simple method2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.8Design RefinementInformal System RequirementInitial SpecificationIntermediate SpecificationFinal Architectural DescriptionIntermediate Specification of ImplementationFinal Internal SpecificationPhysical Implementationrefinementincreasing level of detail2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.9Design as Search Design involves educated guesses and verification-- Given the goals, how should these be prioritized?-- Given alternative design pieces, which should be selected?-- Given design space of components & assemblies, which part will yieldthe best solution?Feasible (good) choices vs. Optimal choicesProblem AStrategy 1 Strategy 2SubProb 1SubProb2SubProb3BB1 BB2 BB3 BBn2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.10Measurement and EvaluationArchitecture is an iterative process-- searching the space of possible designs-- at all levels of computer systemsGood IdeasGood IdeasMediocre IdeasBad IdeasCost /PerformanceAnalysisDesignAnalysisCreativity2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.11Performance: Two notions of “performance”° Time to do the task (Execution Time)– execution time, response time, latency° Tasks per day, hour, week, sec, ns. .. (Performance)– throughput, bandwidthResponse time and throughput often are in oppositionPlaneBoeing 747BAD/SudConcordeSpeed610 mph1350 mphDC to Paris6.5 hours3 hoursPassengers470132Throughput (pmph)286,700178,200Which has higher performance?2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.12What is Time?° Straightforward definition of time: • Total time to complete a task, including disk accesses, memory accesses, I/O activities, operating system overhead, ...• “real time”, “response time” or “elapsed time” ° Alternative: just time processor (CPU) is working only on your program (since multiple processes running at same time)• “CPU execution time” or “CPU time ”• Often divided into system CPU time (in OS)anduser CPU time(in user program)2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.13How to Measure Time?° User Time ⇒ seconds° CPU Time: Computers constructed using a clockthat runs at constant rate • These discrete time intervals called clock cycles (or informally clocks or cycles)• Length of clock period: clock cycle time(e.g., 250 picoseconds or 250 ps) and clock rate (e.g., 4 gigahertz, or 4 GHz), which is the inverse of the clock period; use these!2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.14Measuring Time using Clock Cycles° CPU execution time for program= Clock Cycles for a programx Clock Cycle Time° One way to define clock cycles:Clock Cycles for program= Instructions for a program (called “Instruction Count”)x Average Clock cycles Per Instruction (called “CPI”)2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.15Performance Calculation° CPU execution time for program= Clock Cycles for program x Clock Cycle Time° Substituting for clock cycles: CPU execution time for program= (Instruction Count x CPI) x Clock Cycle Time= Instruction Countx CPI x Clock Cycle TimeCPU time = Instructions x Cycles x SecondsProgram Instruction CycleCPU time = SecondsProgramCPU time = Instructions x Cycles x SecondsProgram Instruction Cycle2/4/04 ©UCB Spring 2004CS152 / Kubiatowicz Lec4.16How Calculate the 3 Components?° Clock Cycle Time: in specification of computer (Clock Rate in advertisements)° Instruction Count:• Count instructions in loop of small program• Use simulator to count instructions• Hardware counter in spec. register (most CPUs)° CPI:• Calculate:


View Full Document

Berkeley COMPSCI 152 - Performance and The Design Process

Documents in this Course
Quiz 5

Quiz 5

9 pages

Memory

Memory

29 pages

Quiz 5

Quiz 5

15 pages

Memory

Memory

29 pages

Memory

Memory

35 pages

Memory

Memory

15 pages

Quiz

Quiz

6 pages

Midterm 1

Midterm 1

20 pages

Quiz

Quiz

12 pages

Memory

Memory

33 pages

Quiz

Quiz

6 pages

Homework

Homework

19 pages

Quiz

Quiz

5 pages

Memory

Memory

15 pages

Load more
Download Performance and The Design Process
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Performance and The Design Process and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Performance and The Design Process 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?