Equations Flashcards
(45 cards)
hamming rule
d + p + 1 <= 2^p
d = data bits
p = parity bits
measuring performance: cycles per instructions
CPI = (sum(CPI . Ii)/Ic
- Ii = executed instructions (type i)
- Ic = executed instructions (total)
measuring performance: time to execute a program (2 equations)
T = (Ic x CPI)/f
OR
T = (Ic(p + m.k)/f
- Ic = executed instructions
- f = frequency
- p = cycles to decode instructions
- m = number of memory references needed
- k = memory cycle time
measuring performance: instructions per second (2 equations)
IPSr = Ic/T
OR
IPSr= f/CPI
- IPSr = rate of instructions per second
- Ic = executed instructions (total)
- T = total execution time
- f = frequency
- CPI = cycles per instructions
measuring performance: floating-point operations per second
FLOPSr = If/T
- FLOPSr = rate of floating-point operations per second
- If = executed floating-point operations (total)
- T = total execution time
speedup general equation
Sp = T1/Tp
- Tp = execution time with p processors
bounds of speedup
1 <= Sp <= p
parallel efficiency
Ep = Sp/p
- p = number of processors
parallel efficiency bounds
1/p <= Ep <= 1
strong scaling
Amdahl’s law -
Tp = s.T1 + (1 - s).T1/p
- Tp = execution time with p processors
- p = number of processors
- s = fraction of code that must run sequentially
speed up in strong scaling
Sp = T1/Tp = p/(s.p + 1 - s)
- p = number of processors
- s = fraction of code that must run sequentially
weak scaling
Gustafson’s law -
T1 = s.Tp + (1 - s).Tp.p
- s = fraction of code that must be run sequentially
- p = number of processors
- Tp = execution time with p processors
speedup in weak scaling
Sp = T1/Tp = s + (1 - s).p
waiting time in queue systems
Little’s law -
L = lambda x W
- L = items waiting in the system
- lambda - average arrival time (items per unit time)
- W = average waiting time in the system
pipeline performance: cycle time
t = max1<=i<=k( ti )+ d = tm + d
- ti = time delay of ith pipeline stage
- k = number of pipeline stages
- d = delay of latch
- tm = maximum stage delay
pipeline performance: total pipeline time
Tk,n = (k + n - 1).t
- Tk,n = execution time of n instructions in k-stages
- t = cycle time
- k = number of pipeline stages
- n = number of instructions
pipeline: speedup
Sk = T1,n/Tk,n = (n.k)/(k + n - 1)
- Sk = speedup of k-stage over 1-stage pipeline
- Tk,n = execution time of n instructions in k-stage pipeline
- t = cycle time
- k = number of pipeline stages
- n = number of instructions
pipeline: limit of speedup
k
memory hierarchy performance modelling: expected access time
ts = h.t1 + (1 - h).(t1 + t2)
= t1 + (1 - h).t2
- ts = average system access time
- h = M1 hit ratio
- t1 = access time of M1
- t2 = access time of M2
memory hierarchy performance modelling: average cost per bit
Cs = (C1.S1 + C2.S2)/(S1 + S2)
- Cs = average system cost per bit
- C1 = average cost per bit of M1
- C2 = average cost per bit of M2
- S1 = size of M1
- S2 = size of M2
memory hierarchy performance modelling: access efficiency
T1/Ts = T1/(T1 + (1 - H).T2)
- T1 = access time of M1
- Ts = average system access time
- H = M1 hit ratio
- T2 = access time of M2
performance modelling memory hierarchy: average access time
Ts = sum(harmonic((1 - hj).hi.ti))
-Ts = average system access time
- h = Mi hit ratio
- ti = access time of Mi
non RAM transfer formula
Tn = Ta + n/R
- Ta = access time
- n = number of bits
- r = transfer rate in bps
main memory formula
M = 2^n/K
- k = blocks
- 2^n = addressable words