Infra & Devops/Hardware
[CPU] 하이퍼 스레딩 (Hyper-Threading, HT)
겸둥이xz
2021. 12. 6. 22:23
반응형
하이퍼 스레딩 (Hyper-Threading, HT)
인텔이 구현한 동시 멀티스레딩을 구현한 기술이다. 물리상 실행 장치 한 개에 가상 실행 장치 (Logical Core) 두 개를 할당해 성능을 높이려는 기술이다. 코어 한 개당 스레드가 두 개씩 추가되므로 OS는 물리적인 코어의 수 x 2로 코어의 수를 인식한다.
하이퍼 스레딩 성능
OS 상에서 멀티태스킹이 일어날 때, 대부분의 프로그램은 CPU 점유율이 몇 퍼센트에 불과할 정도로 매우 낮다(100%에 가깝게 사용하는 경우도 있음). 또한, 프로세스에 필요한 리소스 양은 진행 과정에 따라서 많기도 하고 적기도 하다.
첫 번째 그래프
- 2가지 작업이 시간의 흐름에 따라 하나의 프로세스에서 필요한 자원의 양을 나타냄
- 필요한 자원의 양이 많을 때도 있고, 적을 때가 있음
두 번째 그래프
- OS에서 멀티 태스킹이 이루어지는 원리인 시분할(Time sharing) 방식
- 2가지 작업이 번갈아가며 수행
세 번째 그래프
- 하이퍼 스레딩을 적용한 상황
- 매 사이클마다 자원의 여유 공간에 또 다른 작업을 수행하여 효율을 개선
- 하지만 현재 사이클에서 필요로 하는 자원이 100%를 초과하면, 부족한 자원만큼은 다음 사이클로 넘어감
- 하이퍼 스레딩을 이용하더라도 성능이 정확히 2배가 된다고 말할 수 없음
References
https://donghoson.tistory.com/19
https://ssungkang.tistory.com/entry/%ED%95%98%EC%9D%B4%ED%8D%BC-%EC%8A%A4%EB%A0%88%EB%94%A9
https://ko.wikipedia.org/wiki/%ED%95%98%EC%9D%B4%ED%8D%BC%EC%8A%A4%EB%A0%88%EB%94%A9
반응형