학교에서 들은 컴퓨터 구조 강의 내용을 복습하면서 작성한 글입니다.
March 16, 2024 5:11 PM
IC (Intergrated Circuit, 집적회로) &IC Cost
Yield(수율) ⬆️ → cost per die는 ⬇️
- Wafer Cost, area 고정
- defect는 제조과정에서 결정
- die area 는 구조와 회로 디자인에 다라 결정
Performance
- 성능 평가는 기준에 따라 달라질 수 있음
- 직관적 성능: 실행시간과 반비례
- 성능에 영향 주는 것들
- clock frequency: 속도
- 코어 수
- processor architecture
- 무엇을 측정하는 지에 다라 다름
- Algorithms: 실행되는 operation의 수 결정
- language, compiler, architecture: operation 당 실행되는 기계 명령어의 수 결정
- Processor, memory system: 명령어 실행 속도에 영향
- I/O system: I/O 의 실행 속도(네트워크, 데이터 주고 받기 관련 속도 등)
Processor(컴퓨터 시스템)의 평가 기준
- Frequency : CPU 속도
- Latency(execution, response time): input에 대한 빠른 답? speed
- 일의 시작과 끝 사이 시간
- 좋은 CPU: 일을 빨리
- Throughput(bandwidth): 한번에 처리 가능한 작업량
- Power: 전력
💡 processor를 빠른 버전으로 대체 → response time ⬇️, throughput ⬆️
processor 수 늘림 → throughput ⬆️ (양만 많아지고 response time이 줄어들진 X)
Relative Performance(상대 성능)
- ‘X가 Y보다 n배 빠르다’ 고 할 때,
CPU Clocking
- 거의 모든 컴퓨터는 하드웨어 이벤트가 발생하는 시점을 결정하는 **클럭(clock)**을 이용하여 만들어짐
- 클럭의 시간 간격: 클럭 사이클
- clock period: 1사이클에 걸리는 시간 = clock cycle time
- clock frequency(rate): 1초 당 사이클 개수
- 서로 반비례
CPU Time
- 어떤 일을 하는 데 걸리는 클럭 사이클의 총시간
- 클럭 사이클의 총 수(몇 사이클) X 클럭 주기(단위 당 시간)
- 성능 개선
- clock cycle 수 줄이기
- clock rate (1초당 개수) 늘리기
- rate과 cycle count 는 서로 영향 받음
Instruction Count & CPI
- IC: 프로그램에서 실행해야하는 instruction의 개수
- 프로그램(알고리즘), ISA, compiler에 의해 결정됨
- CPI(Cycles Per Instruction): 명령어 수행 시 사이클 몇 개?
- CPU 하드웨어 디자인에 의해 결정됨
- Instructions 종류에 따라 다를 수 있음
- 다른 명령어 타입 → 사이클 수가 각각 다르다 = CPI가 같다고 할 수 없음 (그룹별로 곱한 합을 따로)
- Weighted average CPI (명령어 조합에 따라 바뀔 수 O)
같은 프로그램이라고 해서 명령어의 수는 모두 동일할까?
컴파일러, ISA가 달라지면 기계어도 달라지고, 명령어 수도 달라지게 됨
→ ISA 구조가 같은 경우에만 CPI가 비교하는 기준으로 쓰일 수 있다.
Performance
- Single Thread Performance
- Latency(실행시간)에 영향을 받는다.
- CPU time = IC X CPI X Clock Cycle Time(=clock period)
- 명령어 수가 적다고 항상 빠른 것은 아님.
클럭 속도가 느려지거나 CPI 가 커져서 오히려 성능이 나빠질 수 있음
- 명령어 수가 적다고 항상 빠른 것은 아님.
'CS > 컴퓨터 구조' 카테고리의 다른 글
[컴퓨터 구조] Logical Operations (1) | 2024.06.15 |
---|---|
[컴퓨터 구조] MIPS instructions (0) | 2024.06.15 |
[컴퓨터 구조] Instructions (0) | 2024.06.15 |
[컴퓨터 구조] SPEC Benchmark & Amdahl’s law (0) | 2024.06.15 |
[컴퓨터 구조] 컴퓨터 추상화와 구조 (0) | 2024.04.27 |