[1-3] Performance

unnhyo·2025년 4월 23일

Computer-Architecture

목록 보기
3/4

1. Performance의 중요성

  • 아키텍처 설계는 반복적 과정:
    • 다양한 설계안 탐색 → 선택 → 평가
  • 좋은 성능 평가 기준측정 도구가 핵심
  • 성능, 비용, 효율성 모두 고려해야 함

2. Latency vs. Throughput

항목설명관심 주체
Latency작업 1개 처리에 걸리는 시간사용자
Throughput단위 시간당 처리량시스템 운영자

⚠️ 둘 사이에는 trade-off가 존재함
❌ Throughput ≠ 1 / Latency 반드시 성립하지 않음


3. CPU Time 개념

  • Wall-clock Time: 전체 수행 시간 (OS 시간 포함)
  • CPU Time: 실제 CPU가 프로그램 수행한 시간
    • User Time + System Time

Clock Cycle Time = 1 / Clock Frequency
예: 4GHz → 0.25ns = 250ps


4. CPU Time 계산식

CPU Time = IC × CPI × Clock Cycle Time
         = CPU Clock Cycles / Clock Rate
•	IC: Instruction Count
•	CPI: Cycles per Instruction
•	IPC: Instructions per Cycle = 1 / CPI

5. MIPS & MFLOPS

MIPS = IC / (Exec Time × 10⁶)
     = Clock Rate / (CPI × 10⁶)

⚠️ 문제점:
• 명령어 복잡도 무시
• 프로그램 종류마다 차이 큼
• 실제 성능과 반대 결과 가능


6. 평균 계산법

산술 평균 (Arithmetic Mean)

AM = (x₁ + x₂ + ... + xₙ) / n

→ 시간 비교용

조화 평균 (Harmonic Mean)

HM = n / (1/x₁ + 1/x₂ + ... + 1/xₙ)

→ 속도(비율) 비교용

기하 평균 (Geometric Mean)

GM = (x₁ × x₂ × ... × xₙ)^(1/n)

→ 비율 비교에 안정적


7. Benchmark

•	성능 측정용 표준 프로그램
•	SPEC: CPU 성능 측정 (예: SPEC2006)
•	TPC: DB 처리량 측정 (TPC-C, TPC-H)

8. Amdahl’s Law (1967)

Speedup ≤ 1 / [(1 - f) + (f / N)]
•	f: 병렬화 가능한 비율
•	N: 프로세서 수
•	N이 무한대로 가더라도 1 / (1 - f)가 최대 속도 향상
•	병렬화 비율 낮으면 의미 없음 

9. Gustafson’s Law (1988)

Speedup = (1 - f) + N × f
•	문제 크기 증가 전제
•	병렬화 가능한 비율(f)이 높을수록
	→ 선형적 성능 향상 가능

10. Amdahl vs Gustafson

비교 항목AmdahlGustafson
전제문제 크기 고정문제 크기 증가
중점최대 성능 제한병렬 성능 증가
활용 분야일반 상황HPC, 슈퍼컴퓨팅
profile
컴퓨터학부

0개의 댓글