-
오버헤드(Overhead)에 대한 정리
1. 오버헤드의 정의
- 위키의 정의:
- 명령어를 처리하는 데 소비되는 간접적, 추가적인 컴퓨터 자원을 의미.
- 일반적인 정의:
- 작업 대비 많은 양의 자원을 사용하는 경우.
- 작업에 추가적인 작업이나 자원을 사용하는 경우.
2. 오버헤드의 사례
(1) 작업 대비 많은 자원 사용
- 예시:
- 저녁식사 준비를 위해 마트에서 다양한 식재료 구매 → 적절한 오버헤드.
- 껌 한 통 구매를 위해 멀리 떨어진 마트를 방문 → 비효율적 오버헤드.
- 설명:
- 작업 규모에 비해 과도한 자원을 사용하는 상황을 오버헤드가 크다고 표현.
(2) 추가적인 작업이나 자원 사용
- 예시:
- 기능 A의 실행 시간: 10초.
- 기능 A의 안전성 문제를 해결하기 위해 기능 B를 추가(5초 소요).
- 오버헤드 = 5초.
- 설명:
- 주 작업에 추가적으로 필요한 작업과 자원 소모량이 오버헤드로 간주.
3. 오버헤드의 영향
- 자원 낭비:
- 작업의 효율성을 저하시키고 자원의 비효율적 사용 초래.
- 성능 저하:
- 추가 작업으로 인해 응답 시간 증가 및 시스템 과부하 유발.
4. 오버헤드를 줄이는 방법
- 최적화:
- 작업에 필요한 최소 자원만을 사용하도록 설계.
- 효율성 고려:
- 추가 작업 최소화:
- 보완 작업(A 기능의 B 기능)을 최소화하거나, 효율적으로 병렬 처리.