Notice
Recent Posts
Recent Comments
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

SYDev

Chapter 05-1: 빠른 CPU를 위한 설계 기법 본문

Computer Architecture + Operating System/Computer Architecture

Chapter 05-1: 빠른 CPU를 위한 설계 기법

시데브 2023. 8. 4. 23:01
클럭코어, 스레드라는 개념을 학습하고, 빠른 CPU를 만드는 설계 기법인 멀티 코어멀티 스레드를 이해해보자.

 

 

클럭

  • 클럭 속도가 높은 CPU는 빠르게 작동한다.
  • 클럭 속도는 헤르츠(Hz) 단위로 측정한다. 1초에 100번 반복되면 100Hz
  • 오버클럭킹(overclocking): 순간적으로 최대 클럭 속도를 강제로 끌어올려 성능을 향상시키는 기법

 

코어와 멀티코어

  • 코어: CPU 내에서 명령어를 실행하는 부품
  • 멀티코어 프로세서: 여러 개의 코어를 포함하는 CPU (dual-core, triple-core, quad-core, hexa-core ...)

 

스레드와 멀티스레드

  • 스레드(thread)는 '실행 흐름의 단위'로, 하드웨어적 스레드소프트웨어적 스레드가 있다.
  • 하드웨어적 스레드: 하나의 코어가 동시에 처리하는 명령어 단위, 2코어 4스레드는 명령어를 실행하는 부품을 두 개 포함하며 한 번에 네 개의 명령어를 처리할 수 있는 CPU.
  • 하나의 코어로 여러 명령어를 동시에 처리하는 CPU를 멀티스레드(multithread) 프로세서 혹은 멀티스레드 CPU라 한다. -> 하이퍼스레딩(hyper-threading): 인텔의 멀티스레드 기술
  • 소프트웨어적 스레드: 하나의 프로그램에서 독립적으로 실행되는 단위, 하나의 워드 프로세서 프로그램에서 입력받은 내용을  화면에 보여주는 기능, 사용자가 입력한 내용이 맞춤법에 맞는지 검사하는 기능 각각 모두 하나의 스레드로 만들면 동시에 실행이 가능하다.

 

멀티스레드 프로세서

  • 하나의 코어로 여러 명령어를 동시에 처리하도록 만들려면 프로그램 카운터, 스택 포인터, 데이터 버퍼 레지스터, 데이터 주소 레지스터 같이 하나의 명령어를 처리하기 위해 꼭 필요한 레지스터를 여러 개 가지면 된다.
  • 프로그램 입장에서 봤을 때 2코어 4스레드는, 한 번에 하나의 명령어를 처리하는 CPU가 4개 있는 것처럼 보이기 때문에 하드웨어 스레드를 논리 프로세서(logical processor)라고 부른다.

 


참고자료

  • 강민철, <혼자 공부하는 컴퓨터구조 + 운영체제>, 한빛미디어(주), 2022.08.16