1. 클럭 (Clock)
- 클럭 (Clock) : CPU 동작을 동기화하는 신호로, CPU 성능에 큰 영향을 미친다.
- 클럭 속도 : CPU의 성능을 나타내는 주요 지표로, 단위는 헤르츠(Hz)
- 1초에 명령어를 몇 번 실행할 수 있는지 나타낸다.
- 클럭 속도가 높을수록 일반적으로 CPU의 처리 속도가 빠르다.
- 동적 클럭 조절 : CPU는 상황에 따라 클럭 속도를 조정
- 성능이 필요한 경우 클럭 속도를 높이고, 필요하지 않을 때는 낮춰 효율성을 높임
- 오버클럭킹 (overclocking) : 최대 클럭 속도를 높여 성능을 향상시키는 기법이지만 발열과 안정성 문제가 발생할 수 있다.
- 한계 : 클럭 속도를 올리는 것만으로는 CPU 성능 향상에 한계가 있으며, 발열 문제가 있을 수 있다.
2. 코어와 멀티코어
- 코어 (Core) : 명령어를 실행하는 독립적인 하드웨어 부품
- 과거에는 CPU에 하나의 코어만 존재했지만, 기술 발전으로 여러 코어를 포함할 수 있게 됐다.
- 멀티코어 CPU (Multi-core CPU, 멀티코어 프로세서) : 여러 코어를 포함한 CPU로 동시 작업 처리 능력 향상
- 예 : 싱글코어 (Single Core), 듀얼코어 (Dual Core), 트리플코어 (Triple Core), 쿼드코어 (Quad Core) 등
- 코어 수가 많아질수록 성능이 향상되지만 (항상 성능이 코어 수에 비례해서 증가하진 않음), 작업이 적절히 분배되지 않으면 성능 향상이 제한
3. 스레드와 멀티스레드
- 스레드 (Thread) : 실행 흐름의 단위
- 하드웨어 스레드 : 하나의 코어가 동시에 처리할 수 있는 명령어 단위
- 소프트웨어 스레드 : 하나의 프로그램 내에서 독립적으로 실행되는 단위
- 멀티스레드 CPU (Multi-thread CPU, 멀티스레드 프로세서) :
- 하나의 코어가 여러 명령어를 동시에 처리할 수 있는 CPU
- 예) 2코어 4스레드 CPU → 두 개의 코어가 네 개의 명령어를 동시에 처리
- 하이퍼스레딩 (Hyper-threading) : 인텔의 멀티스레드 기술로, 하나의 코어가 두 개의 명령어를 처리하도록 설계
- 스레드의 정의 차이 :
- 하드웨어적 스레드 : 하나의 코어가 동시에 처리 가능한 명령어 단위
- 소프트웨어적 스레드 : 하나의 프로그램에서 독립적으로 실행되는 실행 단위
4. 멀티코어와 멀티스레드 차이점
- 멀티코어 (Multi-core) : CPU에 여러 개의 코어 (명령어 실행 하드웨어 부품) 가 포함된 설계
- 멀티스레드 (Multi-thread) : 하나의 코어가 여러 명령어를 동시에 처리하도록 설계된 CPU
- 예)
- 2코어 4스레드 CPU는 두 개의 코어로 네 개의 명령어를 동시에 처리 가능
- 논리적으로는 네 개의 독립적인 CPU가 있는 것처럼 보인다. → 하드웨어적 스레드를 논리 프로세서 (logical processor) 라고도 부른다.
참고 : 책 - 혼자 공부하는 컴퓨터 구조 + 운영체제
'CS' 카테고리의 다른 글
[컴퓨터 구조] CISC와 RISC (0) | 2025.01.03 |
---|---|
[컴퓨터 구조] 명령어 병렬 처리 기법 (명령어 파이프라이닝, 슈퍼스칼라, 비순차적 명령어 처리 기법) (0) | 2025.01.03 |
[컴퓨터 구조] CPU의 작동 원리 (1) | 2025.01.02 |
[컴퓨터 구조] 명령어의 구조와 오퍼랜드 필드의 주소 지정 방식 (0) | 2024.12.26 |
[컴퓨터 구조] 컴퓨터의 구성 (2) | 2024.12.26 |