SlideShare a Scribd company logo
COMPUTER ARCHITECTURE
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
WHAT IS ARCHITECTURE?
• Original sense:
– Taking a range of building materials, putting together in desirable ways to achieve a
building suited to its purpose
• In Computer Science:
– Similar: how parts are put together to achieve some overall goal
– Examples: the architecture of a chip, of the Internet, of an enterprise database
system, an email system, a cable TV distribution system
Adapted from David Clark’s, What is “Architecture”?
WHY COMPUTER ARCHITECTURE?
 Exploit advances in technology
 Make things Faster, Smaller, Cheaper, …
 Which enables new applications
 Shrek 20 years ago?
 Make new things possible
 Accurate one-month weather forecasts? Cure for cancer? Life-like virtual reality?
The advancement of computer architecture is vital
for the advancement of all other areas of
computing!
MOORE’S LAW (1965)
• Transistors per inch square
• Twice as many after ~1.5-2 years
• Related trends
• Processor performance
Twice as fast after ~18 months
• Memory capacity
Twice as much in <2 years
GROWTH IN PROCESSOR PERFORMANCE
1
10
100
1000
10000
1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006
Performance(vs.VAX-11/780)
25%/year
52%/year
20%/year
• VAX : 25%/year 1978 to 1986
• RISC + x86: 52%/year 1986 to 2002
• RISC + x86: 20%/year 2002 to present
From Hennessy and Patterson, Computer
Architecture: A Quantitative Approach, 4th
edition, October, 2006
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
CHANGING FACE OF COMPUTING
In the 1960s mainframes roamed the planet
 Very expensive, operators oversaw operations
 Applications: business data processing,
large scale scientific computing
In the 1970s, minicomputers emerged
 Less expensive, time sharing
In the 1990s, Internet and WWW, handheld devices (PDA),
high-performance consumer electronics for video games
have emerged
Dramatic changes have led to
3 different computing markets
 Servers, Desktop computing, Embedded Computers
DEPENDS ON THE CLASS OF PROCESSOR
Feature Desktop Server Embedded
Price of
system (USD)
$500-$5K $5K - $5M $10 - $100K
(ex. high-end
network routers)
Price of CPU
(per processor)
$50 - $500 $200 - $10K $0.01 - $100
Critical design
issues
Price-
performance,
graphics
performance
Throughput,
availability,
scalability
Price, power,
application-
specific
performance
DESKTOP SYSTEMS
• Examples
– Intel Core 2 Duo
– AMD Opteron
• Applications: everything (general purpose)
– Office, Internet, Multi-media, Video Games…
• Goals
– performance, price/performance
– power  affects cost, size
SERVERS
Examples
IBM Power
Sun Niagara (T1)
Intel Xeon
Applications
infrastructure: file server, email server, …
business: web, e-commerce, databases
Goals
Throughput (transactions/second)
Availability (reliability, dependability, fault tolerance …)
Cost not a major issue
EMBEDDED
• Examples
– Xscale, ARM, MIPS, x86, … (many varieties)
• Applications
– cell phones, mp3 players, game consoles, consumer electronics (refrigerator,
microwave), automobiles, … (many varieties)
• Goals
– Cost, Power
– Sufficient performance, real-time performance
– Size (CPU size, memory footprint, chip count…)
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
TASK OF COMPUTER DESIGNER
“Determine what attributes are important for a new machine; then
design a machine to maximize performance while staying within cost,
power, and availability constraints.”
• Aspects of this task
• Instruction set design
• Functional organization
• Logic design and implementation
(IC design, packaging, power, cooling...)
WHAT IS COMPUTER ARCHITECTURE?
• Instruction Set Architecture
• the computer visible to the assembly language programmer or
compiler writer (registers, data types, instruction set, instruction
formats, addressing modes)
• Organization
• high level aspects of computer’s design such as the memory system, the
bus structure, and the internal CPU (data path + control) design
• Hardware
• detailed logic design, interconnection and packing technology, external
connections
Computer Architecture covers all three aspects of computer
design
INSTRUCTION SET ARCHITECTURE:
CRITICAL INTERFACE
Properties of a good abstraction
Lasts through many generations (portability)
Used in many different ways (generality)
Provides convenient functionality to higher levels
Permits an efficient implementation at lower levels
instruction set
software
hardware
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
TECHNOLOGY TRENDS
Integrated circuit technology – 55% /year
 Transistor density – 35% per year
 Die size – 10-20% per year
Semiconductor DRAM
 Density – 40-60% per year (4x in 3-4 years)
 Cycle time – 33% in 10 years
 Bandwidth – 66% in 10 years
Magnetic disk technology
 Density – 100% per year
 Access time – 33% in 10 years
Network technology (depends on switches and
transmission technology)
 10Mb-100Mb (10years)
 Bandwidth – doubles every year (for USA)
PROCESSOR TRANSISTOR COUNT
Intel
4004,
2300tr
(1971)
Intel P4 – 55M tr
(2001)
Intel
McKinley –
221M tr.
(2001)
Intel Core 2 Extreme
Quad-core 2x291M tr.
(2006)
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
WHY DO YOU CARE ABOUT PRICES?
• Target market, target prices place a limit on the cost of my processor
– price = what I sell the part for
– cost = what it costs me
• Design decisions affect the cost (and price)
– Ex. adding more cache may improve performance, but increase cost
• Price-performance is often what we’re trying to balance
So what determines
price/cost?
COST, PRICE, AND THEIR TRENDS
Price – what you sell a good for
Cost – what you spent to produce it
Understanding cost
Learning curve principle – manufacturing costs
decrease over time (even without major improvements
in implementation technology)
 Best measured by change in yield – the percentage of
manufactured devices that survives the testing procedure
Volume (number of products manufactured)
 decreases the time needed to get down the learning curve
 decreases cost since it increases purchasing and
manufacturing efficiency
Commodities – products sold by multiple vendors in
large volumes which are essentially identical
 Competition among suppliers lower cost
TRENDS IN COST:
THE PRICE OF DRAM AND INTEL PENTIUM III
TRENDS IN COST:
THE PRICE OF PENTIUM4 AND PENTIUMM
COST OF AN INTEGRATED CIRCUIT
• CPU (die) size greatly affects cost of all systems (desktop/server/embedded)
– Current CPUs 1-2 cm2
– Embedded much smaller
• cost and footprint really matters in cell phone or iPod
Silicon Wafer
Die
YIELD
13/16 working chips
81.25% yield
1/4 working chips
25.0% yield




Manufacturing
Defects




YIELD (2)
52 die, 81.25% yield 
42.25 working parts / wafer
17 die, 25.0% yield 
4.25 working parts / wafer
Assuming $250 per wafer:
$5.92 per die
$58.82 per die
COST OF AN INTEGRATED CIRCUIT
Cost of integrated circuit =
(Cost of die + cost of testing die + cost of packaging and final test)
final test yield
COST/YIELD EQUATIONS (APPROXIMATIONS)
Cost of Die =
Cost of wafer
Dies per wafer × Die yield
Dies per wafer = p × (Wafer diameter / 2)2 p × Wafer diameter
Die area sqrt(2 × Die area)
Die yield = Wafer yield × (1 +
Defects per unit area × Die area
a )
-a
Number of
completely
bad wafers
Typical: 0.4 defects
per cm2 in 90nm, but
improves with time
Parameter related to
complexity of manufacturing,
typical a = 0.4
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
DEPENDABILITY: SOME DEFINITIONS
• Computer system dependability is the quality of delivered service
• The service delivered by a system is its observed actual behavior
• Each module has an ideal specified behavior, where a service
specification is an agreed description of the expected behavior
• A failure occurs when the actual behavior deviated from the
specified behavior
• The failure occurred because of an error
• The cause of an error is a fault
DEPENDABILITY: MEASURES
• Service accomplishment vs. service interruption
(transitions: failures vs. restorations)
• Module reliability: a measure of the continuous service
accomplishment
• A measure of reliability: MTTF – Mean Time To Failure
(1/[rate of failure]) reported in [failure/1billion hours of operation)
• MTTR – Mean time to repair (a measure for service interruption)
• MTBF – Mean time between failures (MTTF+MTTR)
• Module availability – a measure of the service accomplishment; =
MTTF/(MTTF+MTTR)
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
COST-PERFORMANCE
Purchasing perspective: from a collection of
machines, choose one which has
best performance?
least cost?
best performance/cost?
Computer designer perspective:
faced with design options, select one which has
best performance improvement?
least cost?
best performance/cost?
Both require: basis for comparison and
metric for evaluation
TWO “NOTIONS” OF PERFORMANCE
Which computer has better performance?
User: one which runs a program in less time
Computer centre manager:
one which completes more jobs in a given time
Users are interested in reducing
Response time or Execution time
the time between the start and
the completion of an event
Managers are interested in increasing
Throughput or Bandwidth
total amount of work done in a given time
DEFINITION OF PERFORMANCE
We are primarily concerned with Response Time
Performance [things/sec]
“X is n times faster than Y”
As faster means both increased performance and
decreased execution time, to reduce confusion
will use “improve performance” or
“improve execution time”
)(_
1
)(
xtimeExecution
xePerformanc 
)(
)(
)(_
)(_
yePerformanc
xePerformanc
xtimeExecution
ytimeExecution
n 
EXECUTION TIME AND ITS COMPONENTS
Wall-clock time, response time, elapsed time
the latency to complete a task, including disk accesses,
memory accesses, input/output activities,
operating system overhead,...
CPU time
the time the CPU is computing, excluding I/O or
running other programs with multiprogramming
often further divided into user and system CPU times
User CPU time
the CPU time spent in the program
System CPU time
the CPU time spent in the operating system
CPU EXECUTION TIME
• Instruction count (IC) = Number of instructions executed
• Clock cycles per instruction (CPI)
timecycleClockprogramaforcyclesclockCPUtimeCPU 
rateClock
programaforcyclesclockCPU
CPUtime 
IC
programaforcyclesclockCPU
CPI 
CPI - one way to compare two machines with same instruction set,
since Instruction Count would be the same
CPU EXECUTION TIME (CONT’D)
timecycleClockCPIICtimeCPU 
rateClock
CPIIC
timeCPU


IC CPI Clock rate
Program X
Compiler X (X)
ISA X X
Organisation X X
Technology X
Program
Seconds
cycleClock
Seconds
nInstructio
cyclesClock
Program
nsInstructio
timeCPU 
HOW TO CALCULATE CPI
• First calculate CPI for each individual instruction (add, sub, and,
etc.): CPIi
• Next calculate frequency of each individual instr.: Freqi = ICi/IC
• Finally multiply these two for each instruction and add them up
to get final CPI
2.2
18%
14%
45%
23%
% Time
0.4220%Bran.
0.3310%Store
1.0520%Load
0.5150%ALU
Prod
.
CPIiFreqiOp
i
n
i
i
CPI
IC
IC
CPI 

1
CHOOSING PROGRAMS TO EVALUATE PER.
• Ideally run typical programs with typical input before
purchase, or before even build machine
– Engineer uses compiler, spreadsheet
– Author uses word processor, drawing program, compression
software
• Workload – mixture of programs and OS commands that
users run on a machine
• Few can do this
– Don’t have access to machine to “benchmark” before purchase
– Don’t know workload in future
BENCHMARKS
• Different types of benchmarks
– Real programs (Ex. MSWord, Excel, Photoshop,...)
– Kernels - small pieces from real programs (Linpack,...)
– Toy Benchmarks - short, easy to type and run
(Sieve of Erathosthenes, Quicksort, Puzzle,...)
– Synthetic benchmarks - code that matches frequency
of key instructions and operations to real programs
(Whetstone, Dhrystone)
• Need industry standards so that different
processors can be fairly compared
• Companies exist that create these benchmarks:
“typical” code used to evaluate systems
BENCHMARK SUITES
• SPEC - Standard Performance Evaluation Corporation
(www.spec.org)
– originally focusing on CPU performance
SPEC89|92|95, SPEC CPU2000 (11 Int + 13 FP)
– graphics benchmarks: SPECviewperf, SPECapc
– server benchmark: SPECSFS, SPECWEB
• PC benchmarks (Winbench 99, Business Winstone 99,
High-end Winstone 99, CC Winstone 99)
(www.zdnet.com/etestinglabs/filters/benchmarks)
• Transaction processing benchmarks (www.tpc.org)
• Embedded benchmarks (www.eembc.org)
COMPARING AND SUMMARISING PER.
• An Example
• What we can learn from these statements?
• We know nothing about
relative performance of computers A, B, C!
• One approach to summarise relative performance:
use total execution times of programs
Program Com. A Com. B Com. C
P1 (sec) 1 10 20
P2 (sec) 1000 100 20
Total (sec) 1001 110 40
– A is 20 times faster than C for
program P1
– C is 50 times faster than A for
program P2
– B is 2 times faster than C for
program P1
– C is 5 times faster than B for
program P2
COMPARING AND SUM. PER. (CONT’D)
• Arithmetic mean (AM) or weighted AM to track time


n
i
iTime
n 0
1



n
i
ii Timew
0
Timei – execution time for ith program
wi – frequency of that program in workload
OUTLINE
• Introduction
• Classes of Computers
• Computer Architecture
• Trends in Technology
• Trends in Cost
• Dependability
• Measuring, Reporting and Summarizing Performance
• Quantitative Principles of Computer Design
QUANTITATIVE PRINCIPLES OF DESIGN
• Where to spend time making improvements?
 Make the Common Case Fast
– Most important principle of computer design:
Spend your time on improvements where those
improvements will do the most good
– Example
• Instruction A represents 5% of execution
• Instruction B represents 20% of execution
• Even if you can drive the time for A to 0, the CPU will only
be 5% faster
• Key questions
– What the frequent case is?
– How much performance can be improved by making
that case faster?
AMDAHL’S LAW
• Suppose that we make an enhancement to a machine that
will improve its performance; Speedup is ratio:
• Amdahl’s Law states that the performance
improvement that can be gained by a particular
enhancement is limited by the amount of time that
enhancement can be used
tenhancemenusingtaskentireforExTime
tenhancemenwithouttaskentireforExTime
Speedup 
tenhancemenwithouttaskentireforePerformanc
tenhancemenusingtaskentireforePerformanc
Speedup 
COMPUTING SPEEDUP
• Fraction enhanced = fraction of execution time in the original machine that can be
converted to take advantage of enhancement (E.g., 10/30)
• Speedup enhanced = how much faster the enhanced code will run (E.g., 10/2=5)
Execution time of enhanced program will be sum of old execution time of the
unenhanced part of program and new execution time of the enhanced part of
program:
enhanced
enhanced
unenhancednew
Speedup
ExTime
ExTimeExTime 
20 10 20 2
COMPUTING SPEEDUP (CONT’D)
• Enhanced part of program is Fraction enhanced,
so times are:
• Factor out Time old and divide by Speedup enhanced:
• Overall speedup is ratio of Time old to Time new:
 enhancedoldunenhanced FractionExTimeExTime - 1
enhancedoldenhanced FractionExTimeExTime 






-
enhanced
enhanced
enhancedoldnew
Speedup
Fraction
FractionExTimeExTime 1
enhanced
enhanced
enhanced
Speedup
Fraction
Fraction
Speedup
-

1
1
AN EXAMPLE
• Enhancement runs 10 times faster and it affects 40% of the execution time
• Fractionenhanced = 0.40
• Speedupenhanced = 10
• Speedupoverall = ?
561
640
1
10
40
401
1
.
..
.

-
Speedup

More Related Content

What's hot

Pentium processor
Pentium processorPentium processor
Pentium processor
Pranjali Deshmukh
 
Computer Architecture and organization
Computer Architecture and organizationComputer Architecture and organization
Computer Architecture and organizationBadrinath Kadam
 
computer Architecture
computer Architecturecomputer Architecture
computer Architecture
umardanjumamaiwada
 
Computer architecture and organization
Computer architecture and organizationComputer architecture and organization
Computer architecture and organization
Tushar B Kute
 
Risc and cisc computers
Risc and cisc computersRisc and cisc computers
Risc and cisc computers
ankita mundhra
 
Risc & cisk
Risc & ciskRisc & cisk
VLIW Processors
VLIW ProcessorsVLIW Processors
VLIW Processors
Sudhanshu Janwadkar
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architecture
AjithaSomasundaram
 
Pipelining
PipeliningPipelining
Pipelining
Amin Omi
 
Memory system
Memory systemMemory system
Memory system
gourav kottawar
 
Cache memory
Cache memoryCache memory
Cache memory
Ansari Maviya
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInstruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
InteX Research Lab
 
Signed Addition And Subtraction
Signed Addition And SubtractionSigned Addition And Subtraction
Signed Addition And Subtraction
Keyur Vadodariya
 
RISC and CISC Processors
RISC and CISC ProcessorsRISC and CISC Processors
RISC and CISC Processors
Adeel Rasheed
 
Multi core processors
Multi core processorsMulti core processors
Multi core processors
Nipun Sharma
 
Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086
Shehrevar Davierwala
 
Harvard architecture
Harvard architectureHarvard architecture
Harvard architectureGichelle Amon
 
Introduction to Microprocessors
Introduction to MicroprocessorsIntroduction to Microprocessors
Introduction to Microprocessors
76 Degree Creative
 
Pipelining & All Hazards Solution
Pipelining  & All Hazards SolutionPipelining  & All Hazards Solution
Pipelining & All Hazards Solution
.AIR UNIVERSITY ISLAMABAD
 
Hypothetical machine and instruction flow scenarios
Hypothetical machine and instruction flow scenariosHypothetical machine and instruction flow scenarios
Hypothetical machine and instruction flow scenarios
Munaam Munawar
 

What's hot (20)

Pentium processor
Pentium processorPentium processor
Pentium processor
 
Computer Architecture and organization
Computer Architecture and organizationComputer Architecture and organization
Computer Architecture and organization
 
computer Architecture
computer Architecturecomputer Architecture
computer Architecture
 
Computer architecture and organization
Computer architecture and organizationComputer architecture and organization
Computer architecture and organization
 
Risc and cisc computers
Risc and cisc computersRisc and cisc computers
Risc and cisc computers
 
Risc & cisk
Risc & ciskRisc & cisk
Risc & cisk
 
VLIW Processors
VLIW ProcessorsVLIW Processors
VLIW Processors
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architecture
 
Pipelining
PipeliningPipelining
Pipelining
 
Memory system
Memory systemMemory system
Memory system
 
Cache memory
Cache memoryCache memory
Cache memory
 
Instruction pipeline: Computer Architecture
Instruction pipeline: Computer ArchitectureInstruction pipeline: Computer Architecture
Instruction pipeline: Computer Architecture
 
Signed Addition And Subtraction
Signed Addition And SubtractionSigned Addition And Subtraction
Signed Addition And Subtraction
 
RISC and CISC Processors
RISC and CISC ProcessorsRISC and CISC Processors
RISC and CISC Processors
 
Multi core processors
Multi core processorsMulti core processors
Multi core processors
 
Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086
 
Harvard architecture
Harvard architectureHarvard architecture
Harvard architecture
 
Introduction to Microprocessors
Introduction to MicroprocessorsIntroduction to Microprocessors
Introduction to Microprocessors
 
Pipelining & All Hazards Solution
Pipelining  & All Hazards SolutionPipelining  & All Hazards Solution
Pipelining & All Hazards Solution
 
Hypothetical machine and instruction flow scenarios
Hypothetical machine and instruction flow scenariosHypothetical machine and instruction flow scenarios
Hypothetical machine and instruction flow scenarios
 

Viewers also liked

Computer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answersComputer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answers
appasami
 
History of computers
History of computersHistory of computers
History of computers
Hoang Nguyen
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
Louise Magno
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
Rishabha Garg
 
Introduction to Computer Architecture
Introduction to Computer ArchitectureIntroduction to Computer Architecture
Introduction to Computer ArchitectureAnkush Srivastava
 
0 introduction to computer architecture
0 introduction to computer architecture0 introduction to computer architecture
0 introduction to computer architectureaamc1100
 
Computer architecture
Computer architecture Computer architecture
Computer architecture Ashish Kumar
 
Computer Architecture – An Introduction
Computer Architecture – An IntroductionComputer Architecture – An Introduction
Computer Architecture – An Introduction
Dilum Bandara
 
Pragmatic optimization in modern programming - modern computer architecture c...
Pragmatic optimization in modern programming - modern computer architecture c...Pragmatic optimization in modern programming - modern computer architecture c...
Pragmatic optimization in modern programming - modern computer architecture c...
Marina Kolpakova
 
Fetch-execute Cycle
Fetch-execute CycleFetch-execute Cycle
Fetch-execute Cycle
Forrester High School
 
computer architecture.
computer architecture.computer architecture.
computer architecture.
Shivalik college of engineering
 
Introduction to CA course
Introduction to CA courseIntroduction to CA course
Introduction to CA course
Hoang Nguyen
 
Computer_Architecture_O_ECEG-3163_01_Introduction (1)
Computer_Architecture_O_ECEG-3163_01_Introduction (1)Computer_Architecture_O_ECEG-3163_01_Introduction (1)
Computer_Architecture_O_ECEG-3163_01_Introduction (1)Nebiyu Musie
 
ورقة عمل درس معالج النصوص
ورقة عمل درس معالج النصوصورقة عمل درس معالج النصوص
ورقة عمل درس معالج النصوصبثينة راشد
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
Rozase Patel
 
Computer architecture short note (version 8)
Computer architecture short note (version 8)Computer architecture short note (version 8)
Computer architecture short note (version 8)
Nimmi Weeraddana
 
Computer architecture
Computer architecture Computer architecture
Computer architecture
International Islamic University
 
What is excel
What is excelWhat is excel
What is excel
shoaib ghulam
 

Viewers also liked (20)

Computer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answersComputer organization-and-architecture-questions-and-answers
Computer organization-and-architecture-questions-and-answers
 
History of computers
History of computersHistory of computers
History of computers
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 
Introduction to Computer Architecture
Introduction to Computer ArchitectureIntroduction to Computer Architecture
Introduction to Computer Architecture
 
0 introduction to computer architecture
0 introduction to computer architecture0 introduction to computer architecture
0 introduction to computer architecture
 
Computer architecture
Computer architecture Computer architecture
Computer architecture
 
Ntroduction to computer architecture and organization
Ntroduction to computer architecture and organizationNtroduction to computer architecture and organization
Ntroduction to computer architecture and organization
 
Computer Architecture – An Introduction
Computer Architecture – An IntroductionComputer Architecture – An Introduction
Computer Architecture – An Introduction
 
12 memory hierarchy
12 memory hierarchy12 memory hierarchy
12 memory hierarchy
 
Pragmatic optimization in modern programming - modern computer architecture c...
Pragmatic optimization in modern programming - modern computer architecture c...Pragmatic optimization in modern programming - modern computer architecture c...
Pragmatic optimization in modern programming - modern computer architecture c...
 
Fetch-execute Cycle
Fetch-execute CycleFetch-execute Cycle
Fetch-execute Cycle
 
computer architecture.
computer architecture.computer architecture.
computer architecture.
 
Introduction to CA course
Introduction to CA courseIntroduction to CA course
Introduction to CA course
 
Computer_Architecture_O_ECEG-3163_01_Introduction (1)
Computer_Architecture_O_ECEG-3163_01_Introduction (1)Computer_Architecture_O_ECEG-3163_01_Introduction (1)
Computer_Architecture_O_ECEG-3163_01_Introduction (1)
 
ورقة عمل درس معالج النصوص
ورقة عمل درس معالج النصوصورقة عمل درس معالج النصوص
ورقة عمل درس معالج النصوص
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 
Computer architecture short note (version 8)
Computer architecture short note (version 8)Computer architecture short note (version 8)
Computer architecture short note (version 8)
 
Computer architecture
Computer architecture Computer architecture
Computer architecture
 
What is excel
What is excelWhat is excel
What is excel
 

Similar to 1 Computer Architecture

Computer Architechture and Organization
Computer Architechture and OrganizationComputer Architechture and Organization
Computer Architechture and Organization
Aiman Hafeez
 
Fundamentals.pptx
Fundamentals.pptxFundamentals.pptx
Fundamentals.pptx
dhivyak49
 
Esd module1
Esd module1Esd module1
Esd module1
SOURAV KUMAR
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
Haris456
 
Lect-01.ppt
Lect-01.pptLect-01.ppt
embedded introduction presentation profe
embedded introduction presentation profeembedded introduction presentation profe
embedded introduction presentation profe
MaltiBansal2
 
Electronic control unit
Electronic control unitElectronic control unit
Electronic control unit
ssuser8f353c1
 
Introduction to Embedded Systems (1).pptx
Introduction to Embedded Systems (1).pptxIntroduction to Embedded Systems (1).pptx
Introduction to Embedded Systems (1).pptx
priyaanaparthy
 
Chapter 05- IT infrastucture and emerging technologies.pptx
Chapter 05- IT infrastucture and emerging technologies.pptxChapter 05- IT infrastucture and emerging technologies.pptx
Chapter 05- IT infrastucture and emerging technologies.pptx
jack732582
 
VLSI and ES Design -An Overview.pptx
VLSI and ES Design -An Overview.pptxVLSI and ES Design -An Overview.pptx
VLSI and ES Design -An Overview.pptx
NukalaMurthy1
 
Building embedded systems
Building embedded systemsBuilding embedded systems
Building embedded systems
VijayGESYS
 
EE 330 Lect 3 Spring 2022.pdf
EE 330 Lect 3 Spring 2022.pdfEE 330 Lect 3 Spring 2022.pdf
EE 330 Lect 3 Spring 2022.pdf
PatriciaTutuani1
 
SOC Design Challenges and Practices
SOC Design Challenges and PracticesSOC Design Challenges and Practices
SOC Design Challenges and Practices
Dr. Shivananda Koteshwar
 
Art of Cloud Workload Translation
Art of Cloud Workload TranslationArt of Cloud Workload Translation
Art of Cloud Workload Translation
Paul Cooper
 
Syste O CHip Concepts for Students.ppt
Syste O CHip Concepts for Students.pptSyste O CHip Concepts for Students.ppt
Syste O CHip Concepts for Students.ppt
monzhalabs
 
Computer Organization and Design
Computer Organization and DesignComputer Organization and Design
Computer Organization and Design
Ra'Fat Al-Msie'deen
 
lec01.pdf
lec01.pdflec01.pdf
lec01.pdf
BeiYu6
 
Hardware Software Codesign
Hardware Software CodesignHardware Software Codesign
Hardware Software Codesigndestruck
 

Similar to 1 Computer Architecture (20)

Computer Architechture and Organization
Computer Architechture and OrganizationComputer Architechture and Organization
Computer Architechture and Organization
 
Fundamentals.pptx
Fundamentals.pptxFundamentals.pptx
Fundamentals.pptx
 
Esd module1
Esd module1Esd module1
Esd module1
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
 
Lect-01.ppt
Lect-01.pptLect-01.ppt
Lect-01.ppt
 
Lect-01.ppt
Lect-01.pptLect-01.ppt
Lect-01.ppt
 
embedded introduction presentation profe
embedded introduction presentation profeembedded introduction presentation profe
embedded introduction presentation profe
 
Electronic control unit
Electronic control unitElectronic control unit
Electronic control unit
 
Introduction to Embedded Systems (1).pptx
Introduction to Embedded Systems (1).pptxIntroduction to Embedded Systems (1).pptx
Introduction to Embedded Systems (1).pptx
 
Chapter 05- IT infrastucture and emerging technologies.pptx
Chapter 05- IT infrastucture and emerging technologies.pptxChapter 05- IT infrastucture and emerging technologies.pptx
Chapter 05- IT infrastucture and emerging technologies.pptx
 
VLSI and ES Design -An Overview.pptx
VLSI and ES Design -An Overview.pptxVLSI and ES Design -An Overview.pptx
VLSI and ES Design -An Overview.pptx
 
Embedded System-design technology
Embedded System-design technologyEmbedded System-design technology
Embedded System-design technology
 
Building embedded systems
Building embedded systemsBuilding embedded systems
Building embedded systems
 
EE 330 Lect 3 Spring 2022.pdf
EE 330 Lect 3 Spring 2022.pdfEE 330 Lect 3 Spring 2022.pdf
EE 330 Lect 3 Spring 2022.pdf
 
SOC Design Challenges and Practices
SOC Design Challenges and PracticesSOC Design Challenges and Practices
SOC Design Challenges and Practices
 
Art of Cloud Workload Translation
Art of Cloud Workload TranslationArt of Cloud Workload Translation
Art of Cloud Workload Translation
 
Syste O CHip Concepts for Students.ppt
Syste O CHip Concepts for Students.pptSyste O CHip Concepts for Students.ppt
Syste O CHip Concepts for Students.ppt
 
Computer Organization and Design
Computer Organization and DesignComputer Organization and Design
Computer Organization and Design
 
lec01.pdf
lec01.pdflec01.pdf
lec01.pdf
 
Hardware Software Codesign
Hardware Software CodesignHardware Software Codesign
Hardware Software Codesign
 

More from fika sweety

Query optimization and performance
Query optimization and performanceQuery optimization and performance
Query optimization and performance
fika sweety
 
Program design techniques
Program design techniquesProgram design techniques
Program design techniques
fika sweety
 
Plsql
PlsqlPlsql
Shift rotate
Shift rotateShift rotate
Shift rotate
fika sweety
 
Graphss
GraphssGraphss
Graphss
fika sweety
 
Modeling and simulation ch 1
Modeling and simulation ch 1Modeling and simulation ch 1
Modeling and simulation ch 1
fika sweety
 
Macros...presentation
Macros...presentationMacros...presentation
Macros...presentation
fika sweety
 
Pseudocode algorithim flowchart
Pseudocode algorithim flowchartPseudocode algorithim flowchart
Pseudocode algorithim flowchart
fika sweety
 
Diversity (HRM)
Diversity (HRM)Diversity (HRM)
Diversity (HRM)
fika sweety
 
Howtowriteamemo 090920105907-phpapp02
Howtowriteamemo 090920105907-phpapp02Howtowriteamemo 090920105907-phpapp02
Howtowriteamemo 090920105907-phpapp02
fika sweety
 
Coal presentationt
Coal presentationtCoal presentationt
Coal presentationt
fika sweety
 
3 Pipelining
3 Pipelining3 Pipelining
3 Pipelining
fika sweety
 
19 primkruskal
19 primkruskal19 primkruskal
19 primkruskal
fika sweety
 
Warehouse chapter3
Warehouse chapter3   Warehouse chapter3
Warehouse chapter3
fika sweety
 
Storage memory
Storage memoryStorage memory
Storage memory
fika sweety
 
Quick sort
Quick sortQuick sort
Quick sort
fika sweety
 
Query optimization and performance
Query optimization and performanceQuery optimization and performance
Query optimization and performance
fika sweety
 
L2
L2L2
Master theorem
Master theoremMaster theorem
Master theorem
fika sweety
 
Database security copy
Database security   copyDatabase security   copy
Database security copy
fika sweety
 

More from fika sweety (20)

Query optimization and performance
Query optimization and performanceQuery optimization and performance
Query optimization and performance
 
Program design techniques
Program design techniquesProgram design techniques
Program design techniques
 
Plsql
PlsqlPlsql
Plsql
 
Shift rotate
Shift rotateShift rotate
Shift rotate
 
Graphss
GraphssGraphss
Graphss
 
Modeling and simulation ch 1
Modeling and simulation ch 1Modeling and simulation ch 1
Modeling and simulation ch 1
 
Macros...presentation
Macros...presentationMacros...presentation
Macros...presentation
 
Pseudocode algorithim flowchart
Pseudocode algorithim flowchartPseudocode algorithim flowchart
Pseudocode algorithim flowchart
 
Diversity (HRM)
Diversity (HRM)Diversity (HRM)
Diversity (HRM)
 
Howtowriteamemo 090920105907-phpapp02
Howtowriteamemo 090920105907-phpapp02Howtowriteamemo 090920105907-phpapp02
Howtowriteamemo 090920105907-phpapp02
 
Coal presentationt
Coal presentationtCoal presentationt
Coal presentationt
 
3 Pipelining
3 Pipelining3 Pipelining
3 Pipelining
 
19 primkruskal
19 primkruskal19 primkruskal
19 primkruskal
 
Warehouse chapter3
Warehouse chapter3   Warehouse chapter3
Warehouse chapter3
 
Storage memory
Storage memoryStorage memory
Storage memory
 
Quick sort
Quick sortQuick sort
Quick sort
 
Query optimization and performance
Query optimization and performanceQuery optimization and performance
Query optimization and performance
 
L2
L2L2
L2
 
Master theorem
Master theoremMaster theorem
Master theorem
 
Database security copy
Database security   copyDatabase security   copy
Database security copy
 

Recently uploaded

WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
AafreenAbuthahir2
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
TeeVichai
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Dr.Costas Sachpazis
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
Amil Baba Dawood bangali
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
Kamal Acharya
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
Kamal Acharya
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
AhmedHussein950959
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
PrashantGoswami42
 
Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
Kamal Acharya
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
R&R Consult
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
abh.arya
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 

Recently uploaded (20)

WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
 
Railway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdfRailway Signalling Principles Edition 3.pdf
Railway Signalling Principles Edition 3.pdf
 
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...
 
Automobile Management System Project Report.pdf
Automobile Management System Project Report.pdfAutomobile Management System Project Report.pdf
Automobile Management System Project Report.pdf
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
Vaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdfVaccine management system project report documentation..pdf
Vaccine management system project report documentation..pdf
 
ASME IX(9) 2007 Full Version .pdf
ASME IX(9)  2007 Full Version       .pdfASME IX(9)  2007 Full Version       .pdf
ASME IX(9) 2007 Full Version .pdf
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
 
Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptxCFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
CFD Simulation of By-pass Flow in a HRSG module by R&R Consult.pptx
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 

1 Computer Architecture

  • 2. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 3. WHAT IS ARCHITECTURE? • Original sense: – Taking a range of building materials, putting together in desirable ways to achieve a building suited to its purpose • In Computer Science: – Similar: how parts are put together to achieve some overall goal – Examples: the architecture of a chip, of the Internet, of an enterprise database system, an email system, a cable TV distribution system Adapted from David Clark’s, What is “Architecture”?
  • 4. WHY COMPUTER ARCHITECTURE?  Exploit advances in technology  Make things Faster, Smaller, Cheaper, …  Which enables new applications  Shrek 20 years ago?  Make new things possible  Accurate one-month weather forecasts? Cure for cancer? Life-like virtual reality? The advancement of computer architecture is vital for the advancement of all other areas of computing!
  • 5. MOORE’S LAW (1965) • Transistors per inch square • Twice as many after ~1.5-2 years • Related trends • Processor performance Twice as fast after ~18 months • Memory capacity Twice as much in <2 years
  • 6. GROWTH IN PROCESSOR PERFORMANCE 1 10 100 1000 10000 1978 1980 1982 1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004 2006 Performance(vs.VAX-11/780) 25%/year 52%/year 20%/year • VAX : 25%/year 1978 to 1986 • RISC + x86: 52%/year 1986 to 2002 • RISC + x86: 20%/year 2002 to present From Hennessy and Patterson, Computer Architecture: A Quantitative Approach, 4th edition, October, 2006
  • 7. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 8. CHANGING FACE OF COMPUTING In the 1960s mainframes roamed the planet  Very expensive, operators oversaw operations  Applications: business data processing, large scale scientific computing In the 1970s, minicomputers emerged  Less expensive, time sharing In the 1990s, Internet and WWW, handheld devices (PDA), high-performance consumer electronics for video games have emerged Dramatic changes have led to 3 different computing markets  Servers, Desktop computing, Embedded Computers
  • 9. DEPENDS ON THE CLASS OF PROCESSOR Feature Desktop Server Embedded Price of system (USD) $500-$5K $5K - $5M $10 - $100K (ex. high-end network routers) Price of CPU (per processor) $50 - $500 $200 - $10K $0.01 - $100 Critical design issues Price- performance, graphics performance Throughput, availability, scalability Price, power, application- specific performance
  • 10. DESKTOP SYSTEMS • Examples – Intel Core 2 Duo – AMD Opteron • Applications: everything (general purpose) – Office, Internet, Multi-media, Video Games… • Goals – performance, price/performance – power  affects cost, size
  • 11. SERVERS Examples IBM Power Sun Niagara (T1) Intel Xeon Applications infrastructure: file server, email server, … business: web, e-commerce, databases Goals Throughput (transactions/second) Availability (reliability, dependability, fault tolerance …) Cost not a major issue
  • 12. EMBEDDED • Examples – Xscale, ARM, MIPS, x86, … (many varieties) • Applications – cell phones, mp3 players, game consoles, consumer electronics (refrigerator, microwave), automobiles, … (many varieties) • Goals – Cost, Power – Sufficient performance, real-time performance – Size (CPU size, memory footprint, chip count…)
  • 13. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 14. TASK OF COMPUTER DESIGNER “Determine what attributes are important for a new machine; then design a machine to maximize performance while staying within cost, power, and availability constraints.” • Aspects of this task • Instruction set design • Functional organization • Logic design and implementation (IC design, packaging, power, cooling...)
  • 15. WHAT IS COMPUTER ARCHITECTURE? • Instruction Set Architecture • the computer visible to the assembly language programmer or compiler writer (registers, data types, instruction set, instruction formats, addressing modes) • Organization • high level aspects of computer’s design such as the memory system, the bus structure, and the internal CPU (data path + control) design • Hardware • detailed logic design, interconnection and packing technology, external connections Computer Architecture covers all three aspects of computer design
  • 16. INSTRUCTION SET ARCHITECTURE: CRITICAL INTERFACE Properties of a good abstraction Lasts through many generations (portability) Used in many different ways (generality) Provides convenient functionality to higher levels Permits an efficient implementation at lower levels instruction set software hardware
  • 17. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 18. TECHNOLOGY TRENDS Integrated circuit technology – 55% /year  Transistor density – 35% per year  Die size – 10-20% per year Semiconductor DRAM  Density – 40-60% per year (4x in 3-4 years)  Cycle time – 33% in 10 years  Bandwidth – 66% in 10 years Magnetic disk technology  Density – 100% per year  Access time – 33% in 10 years Network technology (depends on switches and transmission technology)  10Mb-100Mb (10years)  Bandwidth – doubles every year (for USA)
  • 19. PROCESSOR TRANSISTOR COUNT Intel 4004, 2300tr (1971) Intel P4 – 55M tr (2001) Intel McKinley – 221M tr. (2001) Intel Core 2 Extreme Quad-core 2x291M tr. (2006)
  • 20. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 21. WHY DO YOU CARE ABOUT PRICES? • Target market, target prices place a limit on the cost of my processor – price = what I sell the part for – cost = what it costs me • Design decisions affect the cost (and price) – Ex. adding more cache may improve performance, but increase cost • Price-performance is often what we’re trying to balance So what determines price/cost?
  • 22. COST, PRICE, AND THEIR TRENDS Price – what you sell a good for Cost – what you spent to produce it Understanding cost Learning curve principle – manufacturing costs decrease over time (even without major improvements in implementation technology)  Best measured by change in yield – the percentage of manufactured devices that survives the testing procedure Volume (number of products manufactured)  decreases the time needed to get down the learning curve  decreases cost since it increases purchasing and manufacturing efficiency Commodities – products sold by multiple vendors in large volumes which are essentially identical  Competition among suppliers lower cost
  • 23. TRENDS IN COST: THE PRICE OF DRAM AND INTEL PENTIUM III
  • 24. TRENDS IN COST: THE PRICE OF PENTIUM4 AND PENTIUMM
  • 25. COST OF AN INTEGRATED CIRCUIT • CPU (die) size greatly affects cost of all systems (desktop/server/embedded) – Current CPUs 1-2 cm2 – Embedded much smaller • cost and footprint really matters in cell phone or iPod Silicon Wafer Die
  • 26. YIELD 13/16 working chips 81.25% yield 1/4 working chips 25.0% yield     Manufacturing Defects    
  • 27. YIELD (2) 52 die, 81.25% yield  42.25 working parts / wafer 17 die, 25.0% yield  4.25 working parts / wafer Assuming $250 per wafer: $5.92 per die $58.82 per die
  • 28. COST OF AN INTEGRATED CIRCUIT Cost of integrated circuit = (Cost of die + cost of testing die + cost of packaging and final test) final test yield
  • 29. COST/YIELD EQUATIONS (APPROXIMATIONS) Cost of Die = Cost of wafer Dies per wafer × Die yield Dies per wafer = p × (Wafer diameter / 2)2 p × Wafer diameter Die area sqrt(2 × Die area) Die yield = Wafer yield × (1 + Defects per unit area × Die area a ) -a Number of completely bad wafers Typical: 0.4 defects per cm2 in 90nm, but improves with time Parameter related to complexity of manufacturing, typical a = 0.4
  • 30. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 31. DEPENDABILITY: SOME DEFINITIONS • Computer system dependability is the quality of delivered service • The service delivered by a system is its observed actual behavior • Each module has an ideal specified behavior, where a service specification is an agreed description of the expected behavior • A failure occurs when the actual behavior deviated from the specified behavior • The failure occurred because of an error • The cause of an error is a fault
  • 32. DEPENDABILITY: MEASURES • Service accomplishment vs. service interruption (transitions: failures vs. restorations) • Module reliability: a measure of the continuous service accomplishment • A measure of reliability: MTTF – Mean Time To Failure (1/[rate of failure]) reported in [failure/1billion hours of operation) • MTTR – Mean time to repair (a measure for service interruption) • MTBF – Mean time between failures (MTTF+MTTR) • Module availability – a measure of the service accomplishment; = MTTF/(MTTF+MTTR)
  • 33. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 34. COST-PERFORMANCE Purchasing perspective: from a collection of machines, choose one which has best performance? least cost? best performance/cost? Computer designer perspective: faced with design options, select one which has best performance improvement? least cost? best performance/cost? Both require: basis for comparison and metric for evaluation
  • 35. TWO “NOTIONS” OF PERFORMANCE Which computer has better performance? User: one which runs a program in less time Computer centre manager: one which completes more jobs in a given time Users are interested in reducing Response time or Execution time the time between the start and the completion of an event Managers are interested in increasing Throughput or Bandwidth total amount of work done in a given time
  • 36. DEFINITION OF PERFORMANCE We are primarily concerned with Response Time Performance [things/sec] “X is n times faster than Y” As faster means both increased performance and decreased execution time, to reduce confusion will use “improve performance” or “improve execution time” )(_ 1 )( xtimeExecution xePerformanc  )( )( )(_ )(_ yePerformanc xePerformanc xtimeExecution ytimeExecution n 
  • 37. EXECUTION TIME AND ITS COMPONENTS Wall-clock time, response time, elapsed time the latency to complete a task, including disk accesses, memory accesses, input/output activities, operating system overhead,... CPU time the time the CPU is computing, excluding I/O or running other programs with multiprogramming often further divided into user and system CPU times User CPU time the CPU time spent in the program System CPU time the CPU time spent in the operating system
  • 38. CPU EXECUTION TIME • Instruction count (IC) = Number of instructions executed • Clock cycles per instruction (CPI) timecycleClockprogramaforcyclesclockCPUtimeCPU  rateClock programaforcyclesclockCPU CPUtime  IC programaforcyclesclockCPU CPI  CPI - one way to compare two machines with same instruction set, since Instruction Count would be the same
  • 39. CPU EXECUTION TIME (CONT’D) timecycleClockCPIICtimeCPU  rateClock CPIIC timeCPU   IC CPI Clock rate Program X Compiler X (X) ISA X X Organisation X X Technology X Program Seconds cycleClock Seconds nInstructio cyclesClock Program nsInstructio timeCPU 
  • 40. HOW TO CALCULATE CPI • First calculate CPI for each individual instruction (add, sub, and, etc.): CPIi • Next calculate frequency of each individual instr.: Freqi = ICi/IC • Finally multiply these two for each instruction and add them up to get final CPI 2.2 18% 14% 45% 23% % Time 0.4220%Bran. 0.3310%Store 1.0520%Load 0.5150%ALU Prod . CPIiFreqiOp i n i i CPI IC IC CPI   1
  • 41. CHOOSING PROGRAMS TO EVALUATE PER. • Ideally run typical programs with typical input before purchase, or before even build machine – Engineer uses compiler, spreadsheet – Author uses word processor, drawing program, compression software • Workload – mixture of programs and OS commands that users run on a machine • Few can do this – Don’t have access to machine to “benchmark” before purchase – Don’t know workload in future
  • 42. BENCHMARKS • Different types of benchmarks – Real programs (Ex. MSWord, Excel, Photoshop,...) – Kernels - small pieces from real programs (Linpack,...) – Toy Benchmarks - short, easy to type and run (Sieve of Erathosthenes, Quicksort, Puzzle,...) – Synthetic benchmarks - code that matches frequency of key instructions and operations to real programs (Whetstone, Dhrystone) • Need industry standards so that different processors can be fairly compared • Companies exist that create these benchmarks: “typical” code used to evaluate systems
  • 43. BENCHMARK SUITES • SPEC - Standard Performance Evaluation Corporation (www.spec.org) – originally focusing on CPU performance SPEC89|92|95, SPEC CPU2000 (11 Int + 13 FP) – graphics benchmarks: SPECviewperf, SPECapc – server benchmark: SPECSFS, SPECWEB • PC benchmarks (Winbench 99, Business Winstone 99, High-end Winstone 99, CC Winstone 99) (www.zdnet.com/etestinglabs/filters/benchmarks) • Transaction processing benchmarks (www.tpc.org) • Embedded benchmarks (www.eembc.org)
  • 44. COMPARING AND SUMMARISING PER. • An Example • What we can learn from these statements? • We know nothing about relative performance of computers A, B, C! • One approach to summarise relative performance: use total execution times of programs Program Com. A Com. B Com. C P1 (sec) 1 10 20 P2 (sec) 1000 100 20 Total (sec) 1001 110 40 – A is 20 times faster than C for program P1 – C is 50 times faster than A for program P2 – B is 2 times faster than C for program P1 – C is 5 times faster than B for program P2
  • 45. COMPARING AND SUM. PER. (CONT’D) • Arithmetic mean (AM) or weighted AM to track time   n i iTime n 0 1    n i ii Timew 0 Timei – execution time for ith program wi – frequency of that program in workload
  • 46. OUTLINE • Introduction • Classes of Computers • Computer Architecture • Trends in Technology • Trends in Cost • Dependability • Measuring, Reporting and Summarizing Performance • Quantitative Principles of Computer Design
  • 47. QUANTITATIVE PRINCIPLES OF DESIGN • Where to spend time making improvements?  Make the Common Case Fast – Most important principle of computer design: Spend your time on improvements where those improvements will do the most good – Example • Instruction A represents 5% of execution • Instruction B represents 20% of execution • Even if you can drive the time for A to 0, the CPU will only be 5% faster • Key questions – What the frequent case is? – How much performance can be improved by making that case faster?
  • 48. AMDAHL’S LAW • Suppose that we make an enhancement to a machine that will improve its performance; Speedup is ratio: • Amdahl’s Law states that the performance improvement that can be gained by a particular enhancement is limited by the amount of time that enhancement can be used tenhancemenusingtaskentireforExTime tenhancemenwithouttaskentireforExTime Speedup  tenhancemenwithouttaskentireforePerformanc tenhancemenusingtaskentireforePerformanc Speedup 
  • 49. COMPUTING SPEEDUP • Fraction enhanced = fraction of execution time in the original machine that can be converted to take advantage of enhancement (E.g., 10/30) • Speedup enhanced = how much faster the enhanced code will run (E.g., 10/2=5) Execution time of enhanced program will be sum of old execution time of the unenhanced part of program and new execution time of the enhanced part of program: enhanced enhanced unenhancednew Speedup ExTime ExTimeExTime  20 10 20 2
  • 50. COMPUTING SPEEDUP (CONT’D) • Enhanced part of program is Fraction enhanced, so times are: • Factor out Time old and divide by Speedup enhanced: • Overall speedup is ratio of Time old to Time new:  enhancedoldunenhanced FractionExTimeExTime - 1 enhancedoldenhanced FractionExTimeExTime        - enhanced enhanced enhancedoldnew Speedup Fraction FractionExTimeExTime 1 enhanced enhanced enhanced Speedup Fraction Fraction Speedup -  1 1
  • 51. AN EXAMPLE • Enhancement runs 10 times faster and it affects 40% of the execution time • Fractionenhanced = 0.40 • Speedupenhanced = 10 • Speedupoverall = ? 561 640 1 10 40 401 1 . .. .  - Speedup