본문 바로가기
CS/컴퓨터 구조

컴퓨터 구조 - 클럭, 코어, 스레드 [혼공컴구]

by 블로블로글 2023. 11. 17.

1. 클럭 속도와 성능

  - 컴퓨터 부품들은 클럭 신호에 맞춰 움직임

  - CPU는 명령어 사이클이라는 정해진 흐름에 맞춰 명령어들을 실행

  - 따라서 클럭 신호가 빠르게 반복되면 CPU를 비롯한 컴퓨터 부품들은 그만큼 빠른 박자에 맞춰 움직임

  - 즉, 클럭 속도가 높아지면 CPU는 명령어 사이클을 더 빠르게 반복

  - 클럭 속도는 Hz단위로 측정

    - 2.5 GHz는 1초에 클럭이 25억번 반복됨을 나타냄

 

2. 코어

  - 명령어를 실행하는 부품

  - ALU, 제어장치, 레지스터등이 포함된 하나의 세트가 하나의 코어가 됨

  - CPU가 여러개의 코어를 가지고 있으면 멀티코어CPU 혹은 멀티코어 프로세서로 부름

  - 코어마다 처리할 연산이 적절히 분배되지 않으면 코어 수에 비례하여 연산 속도가 증가하지 않음

 

3. 스레드

  - 실행 흐름의 단위

  - 명령어를 실행하는 단위

  - 종류

    1. 하드웨어적 스레드

      - 하나의 코어가 동시에 처리하는 명령어 단위

      - 2코어 4스레드는 코어 2개, 코어 하나는 2개의 명령어를 동시 처리

      - 하나의 코어로 여러 명령어를 처리하는 CPU를 멀티스레드 프로세서 또는 멀티 스레드 CPU라고 부름

    2. 소프트웨어적 스레드

      - 하나의 프로그램에서 독립적으로 실행되는단위

      - 프로그램의 여러 부분이 동시에  실행

  - 정리

    - 1코어 1스레드 CPU도 소프트웨어적 스레드를 사용 가능

  - 멀티웨어 프로세서

    - 하나의 명령어를 실행하기 위해 꼭 필요한 레지스터들을 '레지스터 세트'라고 정의

    - ALU와 제어장치가 두 개의 레지스터 세트에 저장된 명령어를 해석하고 실행하면 하나의 코어에서 두 개의 명령어가 동시에 실행

    - 그러나 메모리 속 프로그램의 입장에서 봤을 때 하드웨어 스레드는 마치 '한 번에 하나의 명령어를 처리하는 CPU'와 같음

    - 따라서 하드웨어 스레드를 논리 프로세서라고 부르기도 함