0% found this document useful (0 votes)
46 views46 pages

Computer Abstractions and Technology

This document provides an overview of computer abstractions and technology. It discusses the components of computers including processors, memory, storage, and input/output devices. It describes how programs are executed by translating high-level code to machine instructions. Performance is defined in terms of instruction count, clock cycles, and clock rate. The document outlines trends in processor technology such as increasing transistor counts and parallel processing. It discusses reducing power consumption through lowering voltage and frequency.

Uploaded by

Roberto Ariel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
46 views46 pages

Computer Abstractions and Technology

This document provides an overview of computer abstractions and technology. It discusses the components of computers including processors, memory, storage, and input/output devices. It describes how programs are executed by translating high-level code to machine instructions. Performance is defined in terms of instruction count, clock cycles, and clock rate. The document outlines trends in processor technology such as increasing transistor counts and parallel processing. It discusses reducing power consumption through lowering voltage and frequency.

Uploaded by

Roberto Ariel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 46

Chapter 1

Computer Abstractions and Technology

#$%$ &ntroduction

The Computer Revolution

Progress in computer technology

Underpinned by Moores Law Computers in automobiles Cell phones Human genome project orld ide eb !earch "ngines
Chapter 1 Computer Abstractions and Technology 2

Makes novel applications feasible


Computers are pervasive

Classes of Computers

'esktop computers

(eneral purpose) variety of software !ubject to cost*performance tradeoff +etwork based High capacity) performance) reliability ,ange from small servers to building si-ed Hidden as components of systems !tringent power*performance*cost constraints

!erver computers

"mbedded computers

Chapter 1 Computer Abstractions and Technology 3

The Processor Market

Chapter 1 Computer Abstractions and Technology 4

What You Will Learn

How programs are translated into the machine language

.nd how the hardware e/ecutes them

0he hardware*software interface hat determines program performance

.nd how it can be improved

How hardware designers improve performance hat is parallel processing

Chapter 1 Computer Abstractions and Technology 5

Understanding Performance

.lgorithm

'etermines number of operations e/ecuted 'etermine number of machine instructions e/ecuted per operation 'etermine how fast instructions are e/ecuted 'etermines how fast &*1 operations are e/ecuted Chapter 1 Computer Abstractions and Technology 6

Programming language) compiler) architecture

Processor and memory system

&*1 system 2including 1!3

#$%7 8elow 9our Program

Below Your Program

.pplication software

ritten in high4level language Compiler5 translates HLL code to machine code 1perating !ystem5 service code

!ystem software

Handling input*output Managing memory and storage !cheduling tasks 6 sharing resources

Hardware

Processor) memory) &*1 controllers

Chapter 1 Computer Abstractions and Technology 7

Levels of Program Code

High4level language

Level of abstraction closer to problem domain Provides for productivity and portability 0e/tual representation of instructions 8inary digits 2bits3 "ncoded instructions and data Chapter 1 Computer Abstractions and Technology 8

.ssembly language

Hardware representation

#$%< Under the Covers

Components of a Computer
The BIG Picture

!ame components for all kinds of computer

'esktop) server) embedded User4interface devices

&nput*output includes

'isplay) keyboard) mouse Hard disk) C'*':') flash ;or communicating with other computers

!torage devices

+etwork adapters

Chapter 1 Computer Abstractions and Technology

natom! of a Computer
1utput device

+etwork cable

&nput device

&nput device

Chapter 1 Computer Abstractions and Technology 1!

natom! of a Mouse

1ptical mouse

L"' illuminates desktop !mall low4res camera 8asic image processor

Looks for /) y movement

8uttons 6 wheel

!upersedes roller4ball mechanical mouse


Chapter 1 Computer Abstractions and Technology 11

Through the Looking "lass

LC' screen5 picture elements 2pi/els3

Mirrors content of frame buffer memory

Chapter 1 Computer Abstractions and Technology 12

#pening the Bo$

Chapter 1 Computer Abstractions and Technology 13

%nside the Processor &CPU'


'atapath5 performs operations on data Control5 se=uences datapath) memory) %%% Cache memory

!mall fast !,.M memory for immediate access to data

Chapter 1 Computer Abstractions and Technology 14

%nside the Processor

.M' 8arcelona5 > processor cores

Chapter 1 Computer Abstractions and Technology 15

(stractions
The BIG Picture

.bstraction helps us deal with comple/ity

Hide lower4level detail 0he hardware*software interface 0he &!. plus system software interface 0he details underlying and interface

&nstruction set architecture 2&!.3

.pplication binary interface

&mplementation

Chapter 1 Computer Abstractions and Technology 16

)afe Place for *ata

:olatile main memory

Loses instructions and data when power off Magnetic disk ;lash memory 1ptical disk 2C',1M) ':'3

+on4volatile secondary memory


Chapter 1 Computer Abstractions and Technology 17

+etworks

Communication and resource sharing Local area network 2L.+35 "thernet

ithin a building

ide area network 2 .+5 the &nternet ireless network5 i;i) 8luetooth

Chapter 1 Computer Abstractions and Technology 18

Technolog! Trends

"lectronics technology continues to evolve

&ncreased capacity and performance ,educed cost


0echnology :acuum tube 0ransistor &ntegrated circuit 2&C3 :ery large scale &C 2:L!&3 Ultra large scale &C

',.M capacity

9ear $?@$ $?A@ $?B@ $??@ 7CC@

,elative performance*cost $ <@ ?CC 7)>CC)CCC A)7CC)CCC)CCC

Chapter 1 Computer Abstractions and Technology 1

#$%> Performance

*efining Performance

hich airplane has the best performanceD

Chapter 1 Computer Abstractions and Technology 2!

Response Time and Throughput

,esponse time

How long it takes to do a task 0otal work done per unit time

0hroughput

e%g%) tasks*transactions*E per hour

How are response time and throughput affected by


,eplacing the processor with a faster versionD .dding more processorsD

ell focus on response time for nowE


Chapter 1 Computer Abstractions and Technology 21

Relative Performance

'efine Performance F $*"/ecution 0ime GH is n time faster than 9I


Performanc e H Performanc e 9 = "/ecution time 9 "/ecution time H = n

"/ample5 time taken to run a program


$Cs on .) $@s on 8 "/ecution 0ime8 * "/ecution 0ime. F $@s * $Cs F $%@ !o . is $%@ times faster than 8
Chapter 1 Computer Abstractions and Technology 22

Measuring ,$ecution Time

"lapsed time

0otal response time) including all aspects

Processing) &*1) 1! overhead) idle time

'etermines system performance 0ime spent processing a given job

CPU time

'iscounts &*1 time) other jobs shares

Comprises user CPU time and system CPU time 'ifferent programs are affected differently by CPU and system performance

Chapter 1 Computer Abstractions and Technology 23

CPU Clocking

1peration of digital hardware governed by a constant4rate clock


Clock period

Clock 2cycles3 'ata transfer and computation Update state

Clock period5 duration of a clock cycle

e%g%) 7@Cps F C%7@ns F 7@CJ$CK$7s

Clock fre=uency 2rate35 cycles per second

?He%g%) >%C(HF >CCCMHF >%CJ$C Chapter 1 Computer Abstractions and Technology 24

CPU Time
CPU 0ime = CPU Clock Cycles Clock Cycle 0ime CPU Clock Cycles = Clock ,ate

Performance improved by

,educing number of clock cycles &ncreasing clock rate Hardware designer must often trade off clock rate against cycle count
Chapter 1 Computer Abstractions and Technology 25

CPU Time ,$ample


Computer .5 7(H- clock) $Cs CPU time 'esigning Computer 8


.im for As CPU time Can do faster clock) but causes $%7 J clock cycles

How fast must Computer 8 clock beD Clock Cycles8 $%7 Clock Cycles . Clock ,ate8 = = CPU 0ime 8 As Clock Cycles . = CPU 0ime . Clock ,ate . = $Cs 7(H- = 7C $C ? $%7 7C $C ? 7> $C ? Clock ,ate8 = = = >(HAs As Chapter 1 Computer Abstractions and Technology 26

%nstruction Count and CP%


Clock Cycles = &nstruction Count Cycles per &nstruction CPU 0ime = &nstruction Count CP& Clock Cycle 0ime &nstruction Count CP& = Clock ,ate

&nstruction Count for a program

'etermined by program) &!. and compiler 'etermined by CPU hardware &f different instructions have different CP&

.verage cycles per instruction


Chapter 1 Computer Abstractions and Technology 27

.verage CP& affected by instruction mi/

CP% ,$ample

Computer .5 Cycle 0ime F 7@Cps) CP& F 7%C Computer 85 Cycle 0ime F @CCps) CP& F $%7 !ame &!. hich is faster) and by how muchD
CPU 0ime . 8 = &nstruction Count CP& Cycle 0ime . . = & 7%C 7@Cps = & @CCps . is fasterE = &nstruction Count CP& Cycle 0ime 8 8 = & $%7 @CCps = & ACCps

CPU 0ime CPU 0ime

8 = & ACCps = $%7 Eby this much CPU 0ime & @CCps . Chapter 1 Computer Abstractions and Technology 28

CP% in More *etail

&f different instruction classes take different numbers of cycles


Clock Cycles = 2CP&i &nstruction Count i 3
i=$ n

eighted average CP&

n Clock Cycles &nstruction Count i CP& = = CP&i &nstruction Count i=$ &nstruction Count

,elative fre=uency

Chapter 1 Computer Abstractions and Technology 2

CP% ,$ample

.lternative compiled code se=uences using instructions in classes .) 8) C


Class CP& for class &C in se=uence $ &C in se=uence 7 . $ 7 >

8 7 $ $

C < 7 $

!e=uence $5 &C F @

!e=uence 75 &C F A

Clock Cycles Clock Cycles F 7J$ L $J7 L 7J< F >J$ L $J7 L $J< F $C F? .vg% CP& F ?*A F $%@ .vg% CP& F $C*@ F 7%C Chapter 1 Computer Abstractions and Technology 3!

Performance )ummar!
The BIG Picture

&nstructions Clock cycles !econds CPU 0ime = Program &nstruction Clock cycle

Performance depends on

.lgorithm5 affects &C) possibly CP& Programming language5 affects &C) CP& Compiler5 affects &C) CP& &nstruction set architecture5 affects &C) CP&) 0c
Chapter 1 Computer Abstractions and Technology 31

#$%@ 0he Power

Power Trends

all

&n CM1! &C technology


Power = Capacitive load :oltage 7 ;re=uency
Chapter 1 Computer Abstractions and Technology 32
J<C @: M $: J$CCC

Reducing Power

!uppose a new CPU has


N@O of capacitive load of old CPU $@O voltage and $@O fre=uency reduction

Pnew Cold C%N@ 2:old C%N@37 ;old C%N@ > = = C%N@ = C%@7 7 Pold Cold :old ;old

0he power wall


e cant reduce voltage further e cant remove more heat


Chapter 1 Computer Abstractions and Technology 33

How else can we improve performanceD

#$%A 0he !ea Change5 0he !witch to Multiprocessors

Uniprocessor Performance

Constrained by power) instruction4level parallelism) memory latency

Chapter 1 Computer Abstractions and Technology 34

Multiprocessors

Multicore microprocessors

More than one processor per chip Compare with instruction level parallelism

,e=uires e/plicitly parallel programming

Hardware e/ecutes multiple instructions at once Hidden from the programmer

Hard to do
Programming for performance Load balancing 1ptimi-ing communication and synchroni-ation Chapter 1 Computer Abstractions and Technology 35

#$%B ,eal !tuff5 0he .M' 1pteron H>

Manufacturing %Cs

9ield5 proportion of working dies per wafer


Chapter 1 Computer Abstractions and Technology 36

M* #pteron -. Wafer

H75 <CCmm wafer) $$B chips) ?Cnm technology H>5 >@nm technology

Chapter 1 Computer Abstractions and Technology 37

%ntegrated Circuit Cost


Cost per wafer Cost per die = 'ies per wafer 9ield 'ies per wafer afer area 'ie area $ 9ield = 2$+ 2'efects per area 'ie area*7337

+onlinear relation to area and defect rate


afer cost and area are fi/ed 'efect rate determined by manufacturing process 'ie area determined by architecture and circuit design Chapter 1 Computer Abstractions and Technology 38

)P,C CPU Benchmark

Programs used to measure performance

!upposedly typical of actual workload 'evelops benchmarks for CPU) &*1) eb) E

!tandard Performance "valuation Corp 2!P"C3

!P"C CPU7CCA

"lapsed time to e/ecute a selection of programs

+egligible &*1) so focuses on CPU performance

+ormali-e relative to reference machine !ummari-e as geometric mean of performance ratios

C&+07CCA 2integer3 and C;P7CCA 2floating4point3


n

i =$ Chapter 1 Computer Abstractions and Technology 3

"/ecution time ratio

C%+T.//0 for #pteron -1 .230


+ame perl b-ip7 gcc mcf go hmmer sjeng lib=uantum h7A>avc omnetpp astar /alancbmk 'escription &nterpreted string processing 8lock4sorting compression (+U C Compiler Combinatorial optimi-ation (o game 2.&3 !earch gene se=uence Chess game 2.&3 Puantum computer simulation :ideo compression 'iscrete event simulation (ames*path finding HML parsing &CJ$C? 7)$$N 7)<N? $)C@C <<A $)A@N 7)BN< 7)$BA $)A7< <)$C7 @NB $)CN7 $)C@N CP& C%B@ C%N@ $%B7 $C%CC $%C? C%NC C%?A $%A$ C%NC 7%?> $%B? 7%BC 0c 2ns3 C%>C C%>C C%>B C%>C C%>C C%>C C%>N C%>C C%>C C%>C C%>C C%>C "/ec time A<B N$B 7> $)<>@ B7$ N?C <B $)C>B ??< A?C BB< $)$>< ,ef time ?)BBB ?)A@C N)C@C ?)$7C $C)>?C ?)<<C $7)$CC 7C)B7C 77)$<C A)7@C B)C7C A)?CC $$%B !P"Cratio $@%< $$%N $$%$ A%N $>%A $C%@ $>%@ $?%N 77%< ?%$ ?%$ A%C

(eometric mean

High cache miss rates

Chapter 1 Computer Abstractions and Technology 4!

)P,C Power Benchmark

Power consumption of server at different workload levels


Performance5 ssjQops*sec Power5 atts 2Roules*sec3


$C $C att = ssjQops i poweri i=C i=C

1verall ssjQops per

Chapter 1 Computer Abstractions and Technology 41

)P,Cpower4ss5.//6 for -1
0arget Load O $CCO ?CO NCO BCO ACO @CO >CO <CO 7CO $CO CO 1verall sum SssjQops* Spower Performance 2ssjQops*sec3 7<$)NAB 7$$)7N7 $N@)NC< $A<)>7B $>C)$AC $$N)<7> ?7C)<@ BC)@CC >B)$7A 7<)CAA C $)7N<)@?C .verage Power 2 atts3 7?@ 7NA 7B@ 7A@ 7@A 7>A 7<< 777 7CA $NC $>$ 7)AC@ >?<

Chapter 1 Computer Abstractions and Technology 42

#$%N ;allacies and Pitfalls

Pitfall7 mdahl8s Law

&mproving an aspect of a computer and e/pecting a proportional improvement in overall performance


0improved 0affected = + 0unaffected improvemen t factor

"/ample5 multiply accounts for NCs*$CCs

How much improvement in multiply performance to get @J overallD NC Cant be doneT 7C = + 7C n Chapter 1 Computer Abstractions and Technology 43

Corollary5 make the common case fast

9allac!7 Low Power at %dle

Look back at H> power benchmark


.t $CCO load5 7?@ .t @CO load5 7>A 2N<O3 .t $CO load5 $NC 2A$O3 Mostly operates at $CO K @CO load .t $CCO load less than $O of the time

(oogle data center


Consider designing processors to make power proportional to load


Chapter 1 Computer Abstractions and Technology 44

Pitfall7 M%P) as a Performance Metric

M&P!5 Millions of &nstructions Per !econd

'oesnt account for


'ifferences in &!.s between computers 'ifferences in comple/ity between instructions

&nstruction count M&P! = "/ecution time $C A &nstruction count Clock rate = = A &nstruction count CP& CP& $C A $C Clock rate

CP& varies between programs on a given CPU


Chapter 1 Computer Abstractions and Technology 45

#$%? Concluding ,emarks

Concluding Remarks

Cost*performance is improving

'ue to underlying technology development &n both hardware and software 0he hardware*software interface

Hierarchical layers of abstraction

&nstruction set architecture

"/ecution time5 the best performance measure Power is a limiting factor

Use parallelism to improve performance

Chapter 1 Computer Abstractions and Technology 46

You might also like