Você está na página 1de 18

Designing for Performance

TWO(2) LAWS : AHMDAHLS LAW & LITTLE LAWS


Ahmdahls Law (Gene Ahmdahl, 1967)
Limitation

=

=

1 +

1 +

1 +

less effect
speedup bounded to

1
(1)

- total execution time using single processor


1 - fraction time of execution time
number of processor
School of Microelectronic Engineering
Universiti Malaysia Perlis

Designing for Performance

School of Microelectronic Engineering


Universiti Malaysia Perlis

Designing for Performance

School of Microelectronic Engineering


Universiti Malaysia Perlis

Designing for Performance


Example
Suppose that a task make extensive use
of floating-points operations, with 40%
of the time consumed by floating-point
operations. With new hardware design,
the floating-point module is sped up by
a factor of K. Then the overall speed up
is as follows:
1
=
0.4
0.6 +

School of Microelectronic Engineering


Universiti Malaysia Perlis

Designing for Performance


Littles Law
Assumption
A steady state system
No leakage
=
: average rate of arrival items
: average time of item stay in the system

School of Microelectronic Engineering


Universiti Malaysia Perlis

Designing for Performance


Consideration for processor hardware evaluation &
setting requirements
Performance, Cost, Size, Security, Reliability, Power
consumption
Raw speed < execution
Application performance
Instruction set, Implementation language, Compiler
efficiency, Programming skill
School of Microelectronic Engineering
Universiti Malaysia Perlis

Designing for Performance


Basic measurement of computer performance
Clock speed
Also known as clock rate
Clock cycle
Cycle time

School of Microelectronic Engineering


Universiti Malaysia Perlis

Designing for Performance


Basic measurement of computer performance
Instruction execution rate
=
: instruction count

=1(

Processor time,

=
: constant cycle time

School of Microelectronic Engineering


Universiti Malaysia Perlis

Designing for Performance


Basic measurement of computer performance
Memory cycle time > processor cycle time
= [ + ( )]
: number of processor
m: number of memory
k: ratio between memory cycle time & processor cycle
time
School of Microelectronic Engineering
Universiti Malaysia Perlis

Designing for Performance


Basic measurement of computer performance
Million instructions per second (MIPS) rate

=
=
6
10
106
Million of floating-point operations per second (MFLOPS) rate


=
106

School of Microelectronic Engineering


Universiti Malaysia Perlis

10

Designing for Performance


Example:
Consider 2 million of instructions on a 400MHz processor.
Four major instructions are used as follow:
Instruction type

CPI

Instruction Mix (%)

Arithmetic & Logic

60

Load/store with cache hit

18

Branch

12

Memory reference with cache miss

10

Solution
= 0.6 + 0.2 0.18 + 4 0.12 + 8 0.1 = 2.24
= (400 106 )/(2.24 106 ) 178
School of Microelectronic Engineering
Universiti Malaysia Perlis

11

Designing for Performance


Calculation
Mean
Arithmetic mean
1 + + 1
=
=

Geometric mean
=

=1
1/

1 =

=1

School of Microelectronic Engineering


Universiti Malaysia Perlis

ln( )
=1
12

Designing for Performance


Calculation
Mean
Harmonic mean

=
=
, > 0
1
1
1

+ +
=1
1

Functional mean

1
1

= 1
= 1
( )

=1

School of Microelectronic Engineering


Universiti Malaysia Perlis

13

Designing for Performance


Benchmark principles
MIPS
MFLOPS
SPEC benchmarks SPEC CPU2006
SPECviewperf : 3D graphic
SPECwpc
: workstation
SPECjvm2008 : hardware & software
SPECjbb2013 : commerce application
SPECsfs2008 : speed & request-handling capabilities
SPECvirt_sc2013 : datacenter servers
School of Microelectronic Engineering
Universiti Malaysia Perlis

14

Designing for Performance


SPEC suites
SPEC CPU89
SPEC CPU92
SPEC CPU95
SPEC CPU2000
SPEC CPU2006

School of Microelectronic Engineering


Universiti Malaysia Perlis

15

Designing for Performance


Compile & run each program. Runtime
is measured & median value is selected
(3x) execution time not intrinsic to
program
12 result is normalized ratio of
reference to system under test
GM is calculated yield overall metric

School of Microelectronic Engineering


Universiti Malaysia Perlis

16

Designing for Performance


Four (4) metric for benchmarks
SPECint2006
Compiled with peak tuning
SPECint_base2006
Compiled with base tuning
SPECint_rate2006
Throughput ratio when compiled with peak tuning
SPECint_rate_base2006
Throughput ratio when compiled with base tuning
Throughput: how many tasks can accomplish in certain
amount of time
School of Microelectronic Engineering
Universiti Malaysia Perlis

17

Finish!
Q&A

School of Microelectronic Engineering


Universiti Malaysia Perlis

18

Você também pode gostar