하이퍼스레딩

정의
하이퍼스레딩(Hyper-Threading)은 인텔이 개발한 동시 멀티스레딩(Simultaneous Multithreading, SMT) 기술로, 하나의 물리적 CPU 코어가 두 개 이상의 논리적 코어(스레드)로 동작하도록 설계되어 프로그램의 스레드 수준 병렬성을 향상시키는 기능이다.

개요

  • 하이퍼스레딩은 물리적 코어 내부에 두 개의 레지스터 집합과 스케줄링 로직을 추가함으로써, 하나의 코어가 동시에 두 개의 스레드를 실행할 수 있게 만든다.
  • 운영 체제는 각 논리적 코어를 별개의 프로세서처럼 인식하므로, 스레드 스케줄링이 보다 효율적으로 이루어질 수 있다.
  • 이 기술은 CPU의 실행 파이프라인, 분기 예측, 캐시 등 자원을 공유하면서도, 사용되지 않은 자원을 다른 스레드가 활용하도록 함으로써 전반적인 처리량을 증가시킨다.
  • 초기 적용 모델은 2002년 출시된 인텔 펜티엄 4 HT(“HT”는 “Hyper-Threading”의 약자)이며, 이후 인텔 코어 i 시리즈, 제온, 코어 X‑시리즈 등 다양한 제품군에 탑재되었다.
  • 하이퍼스레딩은 윈도우, 리눅스, macOS 등 주요 운영 체제에서 지원되며, BIOS/UEFI 설정에서 활성화·비활성화할 수 있다.

어원/유래

  • 용어 “Hyper‑Threading”은 인텔이 2000년대 초에 발표한 기술 명칭으로, “hyper”(극도로, 고도로)와 “thread”(스레드, 실행 흐름)의 합성어이다.
  • 한국어 표기는 영어 발음을 그대로 차용한 “하이퍼스레딩”이며, 학술·산업 문서에서 일반적으로 사용된다.

특징

  1. 논리적 코어 수 증가 – 한 물리적 코어당 두 개의 논리적 코어가 제공되며, 일부 최신 아키텍처에서는 3개 이상의 논리적 코어를 지원하기도 한다.
  2. 성능 향상 – 워크로드가 멀티스레드에 최적화된 경우, 평균 10 %‒30 % 정도의 처리량 증가가 보고된다. 단일 스레드 작업에서는 큰 이득을 기대하기 어렵다.
  3. 자원 공유 – 캐시, 실행 파이프라인, 실행 단위(ALU 등)는 물리적 코어가 공유하므로, 스레드 간 경쟁으로 인한 성능 저하가 발생할 수 있다.
  4. 전력 효율성 – 동일한 물리적 코어 수로 더 높은 병렬성을 제공하므로, 추가 코어를 도입하는 것보다 전력 소비 대비 효율이 높다.
  5. 소프트웨어 의존성 – 운영 체제와 애플리케이션이 다중 스레드 환경을 충분히 활용하도록 설계되어 있어야 최대 이점을 얻을 수 있다.

관련 항목

  • 동시 멀티스레딩(Simultaneous Multithreading, SMT)
  • 멀티스레딩(Multithreading)
  • 인텔 코어 프로세서
  • 인텔 제온 프로세서
  • CPU 캐시 구조
  • 파이프라인(pipeline)
  • 운영 체제 스케줄러
  • 하이퍼스레딩 비활성화 설정( BIOS/UEFI)

※ 본 내용은 인텔 공식 자료, 주요 기술 서적, 그리고 공개된 학술·산업 문헌을 기반으로 작성되었으며, 확인되지 않은 추측성 정보는 포함하지 않았다.

둘러보기

더 찾아볼 만한 주제