성능을 측정하는 지표에는 두가지가 있다
- Response time (Latency) : time elapsed betwwen start and end of a program, 새로운 일이 주어지면 반응하는 시시간, 응답시간 // 엄밀히 따지면 response time과 latency를 구분하는데 비슷한 개념
- Throughput : 정해진 시간동안 하는 일
latency 느려봐야 한 두 클락 손해 -> 영향없음
보통 latency보다 throughput 향상에 초점을 맞춘다.
성능
cpu 실행시간
클락 speed가 1GHz라면 1초에 1GB만큼 이동한다는 뜻.
문제
-> 30billion clock
1초에 1.5billion인데 2만큼 가야되니까
실행시간은 1.3333333초
실행시간
CPI : Instruction 당 필요한 clock의 개수
당연히 cpi는 낮을수록 좋다.
문제
위의 식으로 활용하면
10 = 0.5(clock cycle time = 1 / clockspeed) * instructions * 3
20/3 billions 만큼의 명령어가 돌아간다.
성능향상 요인
성능 향상을 위해선 Execution time을 줄여야 됨. 따라서 각각의 요소가 줄어야된다.
Clock cycle time : 공정, 설계 등을 방법으로 줄일 수 있다. (반도체가 몇나노몇나노 줄이는게 이런거임)
Number of instrs : 컴파일러가 좋으면 같은 프로그램도 명령어가 적어짐 or 컴퓨터가 효율적이면 됨
CPI : 설계를 기가막히게 하면 된다.
Quiz
두개 중에 누가더 성능이 좋을까?
얘의 실행시간은 4 * 1.5 * 1 = 6
얘의 실행시간은 2 * /1.5 * 6 = 8
따라서 전자의 시스템이 더 성능이 좋다.
'학교공부 > 컴퓨터구조' 카테고리의 다른 글
컴퓨터구조 SingleCycle (0) | 2020.06.15 |
---|---|
컴퓨터구조 MIPS - 2 (0) | 2020.06.14 |
컴퓨터구조 MIPS (0) | 2020.06.14 |
컴퓨터구조 20 - Memory Hierarchy (0) | 2020.05.28 |
컴퓨터구조 19 - Memory Hierarchy (0) | 2020.05.20 |