작성자 | Chromatics | ||
---|---|---|---|
작성일 | 2011-06-04 00:11:51 KST | 조회 | 871 |
제목 |
하이퍼스레딩에 대한 쉽고 간단한 설명
|
인텔에서는 이 하이퍼스레드 기술을 펜티엄 4 때 도입했었지만, 이후 삭제했다 네할렘(최초 i5, i7 시리즈) 프로세서가 나오면서 i7 계열 CPU에 다시 탑재하게 됩니다.
간단하게 외형으로 살피자면 하이퍼스레딩은 CPU 물리 코어가 1개 당 논리 코어 2개를 만들게 되는 겁니다. 간단하게 예를 들면 제가 쓰는 i7 950은 원래 물리 코어가 4개인데 하이퍼스레딩으로 논리 코어는 8개가 됩니다.
하지만 성능이 그렇다고 2배가 되느냐? 그건 또 아닙니다.
와우하신 분들을 기준으로 쉽게 예를 들어 보이죠. 도적이나 전사의 경우에는 무기의 쌍수착용이 가능합니다. 공속 1초짜리 보조무기와 주무기를 착용한 상태에서, 플레이어는 주무기와 보조무기를 휘두르라는 지시를 받습니다.
이 때, 하이퍼스레딩이 활성화되지 않은 상황이라면, 논리 코어가 1개이므로, 내려진 지시는 반드시 순차적으로 행해야 합니다. 주무기 혹은 보조무기를 휘두른 뒤, 남은 무기를 휘두르게 됩니다.
하지만 이렇게 되면 오른손이 휘둘러질 때는 왼손이 놀고, 왼손이 휘둘러질 때는 오른손이 놀죠. 이렇게 되면 명령을 수행하는데 든 시간이 1초+1초, 따라서 2초입니다. 이거 참 비효율적이죠?
그래서 하이퍼스레딩이 켜진 상황에서는, 오른손으로 주무기를 휘두를 때 왼손이 놀게 되므로 주무기를 휘두르는 명령을 수행하는 동시에 보조무기를 휘두르라는 명령을 수행할 수 있고, 따라서 주무기 보조무기가 같이 휘둘러집니다. 이렇게 되면 두 무기를 한 번씩 휘두르는 시간이 훨씬 단축됩니다. 그래서 공격을 한 번 하는데 드는 시간이 1초밖에 안 듭니다.
여기까지만 들으면 아주 효율적일 것 같지만... 그렇지가 않습니다. 코어라는 것도 사람처럼 일을 하는 부분이 여러개로 나뉘어 있고 수행하는 일도 여러가지이기 때문이죠.
숨을 쉬고 오른손이 하는 일을 왼손이 할 수 없고, 다리로 해야하는 일을 손이 대신할 수 없습니다. 와우로 치자면 한손무기가 아닌 이상은 주무기를 왼손으로 휘두를 수 없고, 보조무기를 오른손으로 휘두를 수 없다는 겁니다.
만일 보조무기를 휘두르라는 명령 2개가 떨어지면, 이 때는 오른손이 놀아도 오른손은 보조무기를 쓸 수 없으므로 왼손만으로 보조무기를 2번 사용해야 하고 공속이 1초니 1초+1초=2초가 될 수 밖에 없습니다. 하이퍼스레딩이 켜져 있어도 결국 변화한 건 없는 셈이죠.
그런데 설상가상으로 보통 지시는 단순히 저렇게 주무기를 1회 휘두르거나 보조무기를 1회 휘두르라는 지시로 내려오지 않습니다. 매우 복잡한 콤보로 내려오죠. 그런데 이 복잡한 콤보가 2개 내려왔다고 했을 때, 서로 전혀 충돌하지 않는 지시가 내려올 일은 거의 없습니다. 만일 동시에 두 콤보를 실행하려고 하면, 동일한 시각에 두 콤보가 오른손을 서로 사용하려 한다거나, 왼손을 서로 사용하려 한다거나 하게 되는 문제가 생긴다는 말입니다.
이런 문제는 콤보가 길면 길수록 발생할 확률이 더욱 높아지겠죠. 그래서 하이퍼스레딩이 그리 큰 효과를 못 보는 겁니다.
와우의 경우 하이퍼스레딩을 켜면 어떤 현상이 발생하냐면, 두 콤보를 동시에 처리하기 위해서 두 사람을 고용해서 각각 한 사람에게 하나의 콤보를 처리하도록 맞겨야 되는데, 한 사람에게 두 콤보를 처리하라고 맞겨버리는 일이 생깁니다. 이렇게 되면 하이퍼스레딩을 끈 상황보다도 훨씬 효율이 떨어지는 최악의 경우가 나오죠.
하이퍼스레드 기술에 대해서 수박 겉핥기나마 설명이 좀 되었으면 좋겠네요.
|
||
|
|
||
|
|
||
|
|
||
|
© PlayXP Inc. All Rights Reserved.