CPU 성능 평가 (CPU Times)
CPU의 성능 평가
CPU Times: Task 완료까지 소요시간
CPU Clock Cycles: Task를 완료하는 데까지 필요한 Clock의 수
Clock Rate: 1초에 몇 번의 Clock을 도는지 (초당 사이클) = 클럭 속도
Clock Cycle Time (cct, Clock period): 하나의 Clock 당 소요시간 (1->0->1)
Instruction Count: Instruction의 개수
CPI: Cycles Per Instruction, 하나의 Instruction이 필요로 하는 Clock Cycle의 개수
Formula
[ Task 완료까지 소요시간 = 필요한 Clock의 수 x 1개의 Clock당 소요시간]
CPU Times = CPU Clock Cycles x Clock Cycle Time = CPU Clock Cycles / Clock Rate
[Task를 완료하는데 필요한 Clock의 개수 = Instruction의 개수 x 하나의 Instruction이 필요로 하는 Clock의 수]
CPU Clock Cycles = Instructions Count x CPI
[하나의 Clock당 소요시간 = 1 / (초당 사이클) ]
Clock Cycle Time = 1 / Clock Rate
[Task 완료까지 소요시간 = Instruction의 수 * 하나의 Instruction이 필요로 하는 Clock Cycle의 개수 / 초당 사이클]
CPU Times = (Instruction Count x CPI) / Clock Rate
Example
Q1)
A CPU: 2GHz Clock Rate, 10s CPU Times,
B CPU: A의 프로그램보다 1.2배 Clock Cycle이 필요로 하는 프로그램을 6초에 끝내는 CPU B의 Clock Rate?
Clock Rate B = CPU Clock Cycles of B / CPU Times of B = 1.2 x CPU Clock Cycles of A / 6 = 0.2 x CPU Clock Cycles of A
CPU Clock Cycles of A = CPU TImes / Clock Cycle Time = CPU Times * Clock Rate = 10s * 2GHz = 10 * 2 * 10^9 = 20 * 10^9
Clock Rate B = 0.2 * 20 * 10^9 hz = 4 * 10^9 hz = 4GHz
Q2)
A CPU: Cycle Time = 250ps, Average CPI = 2.0
B CPU: Cycle Time = 500ps. Average CPI = 1.2
ps = 10^-9s
Same ISA, Same Program
Select Faster CPU.
CPU Times A = CPU Clock Cycles / Clock Rate = CPU Clock Cycles * cct = Instruction Count * Average CPI * cct
= IC * 2.0 * 250ps
CPU Times B = IC * 1.2 * 500ps
CPU Times B / CPU Times A = IC x 1.2 x 500ps / IC x 2.0 x 250ps = 1.2
-> CPU B가 1.2배 더 빨리 수행한다.