하이퍼 스레딩 기술 htt는 지원되지 않습니다. 하이퍼스레딩을 지원하는 마더보드 - 가격. 하이퍼스레딩은 어디에 필요합니까?

BIOS 설정의 내용을 주의 깊게 살펴보면 거기에 CPU 하이퍼 스레딩 기술 옵션이 있다는 것을 눈치채셨을 것입니다. 그리고 하이퍼스레딩(또는 하이퍼스레딩, 공식 명칭은 Hyper Threading Technology, HTT)이 무엇인지, 이 옵션의 용도가 무엇인지 궁금하셨을 것입니다.

하이퍼 스레딩은 인텔이 펜티엄 아키텍처 프로세서용으로 개발한 비교적 새로운 기술입니다. 실습에서 알 수 있듯이 하이퍼 스레딩 기술을 사용하면 많은 경우 CPU 성능을 약 20-30% 향상시킬 수 있습니다.

여기서는 컴퓨터의 중앙 프로세서가 일반적으로 어떻게 작동하는지 기억해야 합니다. 컴퓨터를 켜고 프로그램을 실행하자마자 CPU는 컴퓨터에 포함된 소위 기계어 코드로 작성된 명령을 읽기 시작합니다. 각 명령어를 차례로 읽고 차례로 실행합니다.

그러나 많은 프로그램에는 동시에 실행되는 여러 소프트웨어 프로세스가 있습니다. 또한 최신 운영 체제에서는 사용자가 여러 프로그램을 동시에 실행할 수 있습니다. 그리고 그들은 그것을 단지 허용하지 않습니다. 실제로 운영 체제에서 단일 프로세스가 실행되는 상황은 오늘날 전혀 상상할 수 없습니다. 따라서 이전 기술을 사용하여 개발된 프로세서는 여러 개의 동시 프로세스를 한 번에 처리해야 하는 경우 성능이 낮았습니다.

물론 이 문제를 해결하기 위해 시스템에 여러 개의 물리적 컴퓨팅 코어를 사용하는 여러 프로세서 또는 프로세서를 포함할 수 있습니다. 그러나 그러한 개선은 비용이 많이 들고 기술적으로 복잡하며 실용적인 관점에서 볼 때 항상 효과적인 것은 아닙니다.

개발 이력

따라서 하나의 물리적 코어에서 여러 프로세스를 처리할 수 있는 기술을 만들기로 결정했습니다. 이 경우 프로그램의 경우 시스템에 한 번에 여러 개의 프로세서 코어가 있는 것처럼 보입니다.

하이퍼 스레딩 기술 지원은 2002년 프로세서에 처음 등장했습니다. 이는 Pentium 4 제품군의 프로세서와 2GHz 이상의 클럭 속도를 가진 Xeon 서버 프로세서였습니다. 처음에는 이 기술의 코드명이 Jackson이었으나 일반 대중이 더 쉽게 이해할 수 있는 하이퍼 스레딩(Hyper Threading)으로 이름이 변경되었습니다. 대략 "슈퍼스레딩"으로 번역할 수 있습니다.

동시에, 인텔에 따르면 하이퍼스레딩을 지원하는 프로세서 크리스탈의 표면적은 이를 지원하지 않는 이전 모델에 비해 단 5% 늘어났고, 평균 성능은 20% 향상됐다.

그러나 이 기술이 일반적으로 잘 입증되었음에도 불구하고 여러 가지 이유로 Intel은 Pentium 4를 대체하는 Core 2 제품군 프로세서에서 하이퍼 스레딩 기술을 비활성화하기로 결정했습니다. 그러나 하이퍼 스레딩은 나중에 프로세서에서 다시 나타났습니다. Sandy Bridge 및 Ivy 아키텍처 Bridge 및 Haswell이 크게 재설계되었습니다.

기술의 본질

하이퍼 스레딩 기술을 이해하는 것은 Intel 프로세서의 핵심 기능 중 하나이기 때문에 중요합니다.

프로세서가 달성한 모든 성공에도 불구하고 한 가지 중요한 단점이 있습니다. 즉, 한 번에 하나의 명령만 실행할 수 있다는 것입니다. 텍스트 편집기, 브라우저, Skype 등의 애플리케이션을 동시에 실행했다고 가정해 보겠습니다. 사용자의 관점에서 볼 때 이 소프트웨어 환경은 멀티태스킹이라고 할 수 있지만 프로세서의 관점에서는 그렇지 않습니다. 프로세서 코어는 일정 기간마다 하나의 명령을 계속 실행합니다. 이 경우 프로세서의 작업은 개별 응용 프로그램 간에 프로세서 시간 리소스를 배포하는 것입니다. 이러한 명령어의 순차적 실행은 매우 빠르게 발생하기 때문에 사용자는 이를 알아차리지 못합니다. 그리고 지연이 없는 것 같습니다.

그러나 여전히 지연이 있습니다. 지연은 각 프로그램이 프로세서에 데이터를 제공하는 방식으로 인해 발생합니다. 각 데이터 스트림은 특정 시간에 도착해야 하며 프로세서에 의해 개별적으로 처리되어야 합니다. 하이퍼 스레딩 기술을 사용하면 각 프로세서 코어가 데이터 처리를 예약하고 두 스레드에 대해 동시에 리소스를 배포할 수 있습니다.

최신 프로세서의 핵심에는 여러 가지 소위 실행 장치가 있으며, 각 장치는 데이터에 대해 특정 작업을 수행하도록 설계되었습니다. 이 경우 이러한 실행 장치 중 일부는 하나의 스레드에서 데이터를 처리하는 동안 유휴 상태일 수 있습니다.

이러한 상황을 이해하기 위해 컨베이어 조립 공장에서 일하고 다양한 유형의 부품을 처리하는 작업자를 비유할 수 있습니다. 각 작업자는 작업을 수행하도록 설계된 특정 도구를 갖추고 있습니다. 그러나 부품이 잘못된 순서로 도착하면 일부 작업자가 작업을 시작하기 위해 줄을 서서 기다리기 때문에 지연이 발생합니다. 하이퍼 스레딩은 이전에 유휴 작업자가 다른 작업자와 독립적으로 작업을 수행할 수 있도록 작업장에 배치된 추가 컨베이어 벨트에 비유될 수 있습니다. 작업장은 여전히 ​​하나이지만 부품이 더 빠르고 효율적으로 처리되어 가동 중지 시간이 줄어듭니다. 따라서 하이퍼 스레딩을 사용하면 한 스레드에서 명령을 실행하는 동안 유휴 상태인 프로세서 실행 장치를 켤 수 있습니다.

하이퍼 스레딩을 지원하는 듀얼 코어 프로세서가 탑재된 컴퓨터를 켜고 성능 탭에서 Windows 작업 관리자를 열면 그 안에 4개의 그래프가 표시됩니다. 하지만 이것이 실제로 4개의 프로세서 코어가 있다는 의미는 아닙니다.

이는 Windows가 각 코어에 두 개의 논리 프로세서가 있다고 생각하기 때문에 발생합니다. "논리 프로세서"라는 용어는 이상하게 들리지만 물리적으로 존재하지 않는 프로세서를 의미합니다. Windows는 각 논리 프로세서에 데이터 스트림을 보낼 수 있지만 실제로는 하나의 코어만 작업을 수행합니다. 따라서 하이퍼스레딩 기술이 적용된 단일 코어는 별도의 물리적 코어와 크게 다릅니다.

하이퍼 스레딩 기술에는 다음 하드웨어 및 소프트웨어의 지원이 필요합니다.

  • CPU
  • 마더보드 칩셋
  • 운영 체제

기술의 이점

이제 다음 질문을 고려해 보겠습니다. 하이퍼 스레딩 기술은 컴퓨터 성능을 얼마나 향상합니까? 인터넷 서핑, 타이핑과 같은 일상적인 작업에서는 기술의 이점이 그다지 명확하지 않습니다. 그러나 오늘날의 프로세서는 너무 강력해서 일상적인 작업에서 프로세서를 완전히 활용하는 경우가 거의 없다는 점을 명심하십시오. 또한 소프트웨어 작성 방법에 따라 많은 것이 달라집니다. 한 번에 여러 프로그램을 실행할 수 있지만 로드 그래프를 보면 코어당 하나의 논리 프로세서만 사용되고 있음을 알 수 있습니다. 이는 소프트웨어가 코어 간 프로세스 배포를 지원하지 않기 때문에 발생합니다.

그러나 보다 복잡한 작업에는 하이퍼스레딩이 더 유용할 수 있습니다. 3D 모델링 프로그램, 3D 게임, 음악 또는 비디오 인코딩/디코딩 프로그램과 같은 응용 프로그램과 많은 과학 응용 프로그램은 멀티스레딩을 최대한 활용하도록 작성되었습니다. 따라서 까다로운 게임을 플레이하거나, 음악을 듣거나, 영화를 감상하는 동안 하이퍼 스레딩 지원 컴퓨터의 성능 이점을 경험할 수 있습니다. 하이퍼 스레딩이 전혀 이점을 제공하지 못하는 상황이 있을 수 있지만 성능 향상은 최대 30%까지 도달할 수 있습니다. 때로는 두 스레드가 동일한 작업으로 모든 프로세서 실행 장치를 로드하는 경우 성능이 약간 저하될 수도 있습니다.

하이퍼 스레딩 매개변수를 설정할 수 있는 BIOS 설정의 해당 옵션이 있는 경우 대부분의 경우 이 기능을 활성화하는 것이 좋습니다. 그러나 컴퓨터에서 오류가 발생하거나 예상보다 성능이 낮은 것으로 판명되면 언제든지 이 기능을 비활성화할 수 있습니다.

결론

하이퍼스레딩을 사용했을 때 최대 성능 향상은 30%이기 때문에 프로세서 코어 수를 두 배로 늘리는 것과 동등하다고는 할 수 없다. 그러나 하이퍼 스레딩은 유용한 옵션이며 컴퓨터 소유자로서 해를 끼치 지 않습니다. 예를 들어 멀티미디어 파일을 편집하거나 컴퓨터를 Photoshop 또는 Maya와 같은 전문 프로그램의 워크스테이션으로 사용할 때 그 이점이 특히 두드러집니다.

15.03.2013

하이퍼스레딩 기술은 말하기에도 두려울 정도로 Intel 프로세서에 등장한 지 10여년이 넘었습니다. 그리고 현재 이는 코어 프로세서의 중요한 요소입니다. 그러나 게임에서 HT의 필요성에 대한 의문은 아직 완전히 명확하지 않습니다. 우리는 게이머에게 Core i7이 필요한지, 아니면 Core i5가 더 나은지 이해하기 위해 테스트를 수행하기로 결정했습니다. 또한 Core i3가 Pentium보다 얼마나 더 나은지 알아보세요.


인텔이 개발하여 기억에 남는 펜티엄 4를 시작으로 회사 프로세서에만 사용되는 하이퍼스레딩 기술은 현재 당연한 것으로 여겨지고 있습니다. 현재 및 이전 세대의 상당수 프로세서가 이를 갖추고 있습니다. 가까운 장래에 사용될 것입니다.

그리고 하이퍼-스레딩 기술이 유용하고 성능에 긍정적인 영향을 미친다는 점을 인정해야 합니다. 그렇지 않으면 Intel이 라인 내에 프로세서를 배치하는 데 이를 사용하지 않을 것입니다. 그리고 부차적인 요소는 아니지만 가장 중요하지는 않더라도 가장 중요한 요소 중 하나입니다. 우리가 말하는 내용을 명확하게 하기 위해 인텔 프로세서 분할 원리를 쉽게 평가할 수 있는 표를 준비했습니다.


보시다시피 Pentium과 Core i3, Core i5와 Core i7 사이에는 차이가 거의 없습니다. 실제로 i3 및 i7 모델은 Pentium 및 i5와 코어당 세 번째 레벨 캐시 크기만 다릅니다(물론 클럭 주파수는 계산하지 않음). 첫 번째 쌍의 크기는 1.5MB이고 두 번째 쌍의 크기는 2MB입니다. 캐시 크기의 차이는 매우 작기 때문에 이러한 차이는 프로세서 성능에 근본적으로 영향을 미칠 수 없습니다. 이것이 바로 Core i3와 Core i7이 각각 Pentium과 Core i5에 비해 성능 우위를 가질 수 있도록 하는 주요 요소인 Hyper-Threading 기술에 대한 지원을 받은 이유입니다.

결과적으로 약간 더 큰 캐시와 하이퍼스레딩 지원을 통해 프로세서 가격이 상당히 높아질 수 있습니다. 예를 들어, Pentium 라인 프로세서(약 10,000텡게)는 Core i3(약 20,000텡게)보다 약 2배 저렴하며 이는 하드웨어 수준에서 물리적으로 완전히 동일하다는 사실에도 불구하고 그에 따라 , 비용은 동일합니다. Core i5(약 3만텡게)와 Core i7(약 5만텡게)의 가격 차이도 매우 크지만, 젊은 모델에서는 2배 미만입니다.


이러한 가격 인상은 얼마나 정당한가? 하이퍼스레딩은 어떤 실질적인 이점을 제공합니까? 대답은 오랫동안 알려져 왔습니다. 증가는 다양하며 모두 애플리케이션과 최적화에 따라 다릅니다. 우리는 가장 까다로운 "가정용" 애플리케이션 중 하나인 게임에서 HT가 무엇을 할 수 있는지 확인하기로 결정했습니다. 또한 이 테스트는 프로세서의 코어 수가 게임 성능에 미치는 영향에 대한 이전 자료에 훌륭한 추가 자료가 될 것입니다.

테스트를 진행하기 전에 하이퍼 스레딩 기술이 무엇인지 기억해 봅시다. 인텔 자체가 수년 전 이 기술을 도입할 때 말했듯이, 특별히 복잡한 것은 없습니다. 실제로 물리적 수준에서 HT를 도입하는 데 필요한 것은 하나의 물리적 코어에 하나의 레지스터 세트와 인터럽트 컨트롤러를 추가하는 것이 아니라 두 개를 추가하는 것입니다. 펜티엄 4 프로세서에서는 이러한 추가 요소로 인해 트랜지스터 수가 5%만 늘어났습니다. 최신 Ivy Bridge 코어(Sandy Bridge 및 향후 Haswell 포함)에서는 코어 4개에 대한 추가 요소가 다이를 1%도 증가시키지 않습니다.


소프트웨어 지원과 결합된 추가 레지스터와 인터럽트 컨트롤러를 통해 운영 체제는 하나의 물리적 코어가 아닌 두 개의 논리적 코어를 볼 수 있습니다. 동시에 시스템에서 전송된 두 스트림의 데이터 처리는 여전히 동일한 코어에서 발생하지만 일부 기능이 있습니다. 하나의 스레드는 여전히 전체 프로세서를 처리할 수 있지만 일부 CPU 블록이 해제되고 유휴 상태가 되자마자 즉시 두 번째 스레드에 제공됩니다. 덕분에 모든 프로세서 블록을 동시에 사용할 수 있어 효율성이 높아졌다. 인텔 자체가 밝혔듯이 이상적인 조건에서 성능 향상은 최대 30%에 달할 수 있습니다. 사실, 이러한 지표는 파이프라인이 매우 긴 Pentium 4에만 해당됩니다. 최신 프로세서는 HT의 이점이 적습니다.

그러나 하이퍼스레딩을 위한 이상적인 조건이 항상 그런 것은 아닙니다. 그리고 가장 중요한 것은 HT의 최악의 결과는 성능 향상의 부족이 아니라 성능 저하입니다. 즉, 특정 조건에서 HT가 있는 프로세서의 성능은 스레드를 나누고 대기열을 구성하는 데 드는 오버헤드 비용이 병렬 스레드를 계산하여 얻을 수 있는 이득을 크게 초과한다는 사실로 인해 HT가 없는 프로세서에 비해 저하됩니다. 이 특별한 경우에는. 그리고 그러한 경우는 인텔이 원하는 것보다 훨씬 더 자주 발생합니다. 더욱이 하이퍼스레딩을 수년간 사용해도 상황은 개선되지 않았습니다. 이는 데이터 계산 및 응용 측면에서 매우 복잡하고 표준이 아닌 게임의 경우 특히 그렇습니다.

하이퍼스레딩이 게임 성능에 미치는 영향을 알아보기 위해 다시 한번 오래 참음의 Core i7-2700K 테스트 프로세서를 사용하고 코어를 비활성화하고 HT를 켜거나 끄는 방식으로 4개의 프로세서를 한 번에 시뮬레이션했습니다. 일반적으로 Pentium(2코어, HT 비활성화), Core i3(2코어, HT 활성화), Core i5(4코어, HT 비활성화), Core i7(4코어, HT 활성화)으로 불릴 수 있습니다. 왜 조건부인가요? 우선, 일부 특성에 따라 실제 제품과 일치하지 않기 때문입니다. 특히, 코어를 비활성화해도 세 번째 수준 캐시의 볼륨은 그에 상응하여 감소하지 않습니다. 전체 볼륨은 8MB입니다. 또한 모든 "조건부" 프로세서는 3.5GHz의 동일한 주파수에서 작동하는데, 이는 아직 Intel 라인의 모든 프로세서에서 달성되지 않았습니다.


그러나 이는 모든 중요한 매개변수의 지속적인 변경 덕분에 어떤 예약도 없이 게임 성능에 대한 하이퍼스레딩의 실제 영향을 알아낼 수 있기 때문에 더 좋습니다. 그리고 "조건부" Pentium과 Core i3 간의 성능 차이 백분율은 주파수가 동일하다면 실제 프로세서 간의 차이에 가깝습니다. 또한 "Bare Performance - ALU 및 FPU의 효율성 조사" 기사에서 읽을 수 있는 효율성 테스트에서 Sandy Bridge 아키텍처가 포함된 프로세서를 사용하고 있다는 사실을 혼동해서는 안 됩니다. 최신 세대 프로세서 코어의 스레딩은 변경되지 않았습니다. 아마도 이 자료는 곧 출시될 Haswell 프로세서와도 관련이 있을 것입니다.

글쎄, 테스트 방법론과 하이퍼 스레딩 기술의 작동 기능에 관한 모든 질문이 논의되었으므로 이제 가장 흥미로운 것, 즉 테스트로 넘어갈 시간입니다.

프로세서 코어 수가 게임 성능에 미치는 영향을 연구한 테스트에서도 3DMark 11은 CPU 성능에 대해 완전히 완화되어 단일 코어에서도 완벽하게 작동하는 것으로 나타났습니다. 하이퍼스레딩도 마찬가지로 "강력한" 영향력을 갖고 있었습니다. 보시다시피, 테스트에서는 중간 모델은 말할 것도 없고 Pentium과 Core i7 사이의 차이점을 발견하지 못했습니다.

메트로 2033

그러나 Metro 2033에서는 Hyper-Threading의 등장을 분명히 알아차렸습니다. 그리고 그녀는 그에게 부정적인 반응을 보였습니다! 예, 그렇습니다. 이 게임에서 HT를 활성화하면 성능에 부정적인 영향을 미칩니다. 물론 작은 영향은 4개의 물리적 코어에서는 초당 0.5프레임, 2개에서는 0.7프레임입니다. 하지만 이 사실은 Metro 2033 Pentium이 Core i3보다 빠르고 Core i5가 Core i7보다 낫다고 말할 수 있는 모든 이유를 제공합니다. 이는 하이퍼스레딩이 모든 곳에서가 아니라 항상 그 효과를 나타내지는 않는다는 사실을 확인하는 것입니다.

크라이시스 2

이 게임은 매우 흥미로운 결과를 보여주었습니다. 우선, 듀얼 코어 프로세서에서 하이퍼스레딩의 영향이 명확하게 드러납니다. Core i3는 Pentium보다 거의 9% 앞서는데, 이는 이 게임에서 상당히 많은 수치입니다. HT와 인텔의 승리? Core i7은 눈에 띄게 저렴한 Core i5에 비해 어떤 이득도 보여주지 않았기 때문에 실제로는 그렇지 않습니다. 그러나 이에 대한 합리적인 설명이 있습니다. Crysis 2는 4개 이상의 데이터 스트림을 사용할 수 없습니다. 이로 인해 HT를 사용하는 듀얼 코어가 상당히 증가한 것을 볼 수 있습니다. 여전히 논리적이긴 하지만 4개의 ​​스레드가 2개보다 낫습니다. 반면에 추가 Core i7 스레드를 배치할 곳은 없었습니다. 4개의 물리적 코어이면 충분했습니다. 따라서 이 테스트 결과를 바탕으로 Core i3에서 HT의 긍정적인 영향을 확인할 수 있는데, 이는 여기서 Pentium보다 눈에 띄게 우수합니다. 그러나 쿼드 코어 프로세서 중에서 Core i5는 다시 한 번 더 합리적인 솔루션처럼 보입니다.

배틀 필드 3

여기의 결과는 매우 이상합니다. 코어 수 테스트에서 전장이 미시적이지만 선형적인 증가의 예라면 하이퍼스레딩을 포함하면 결과에 혼란이 발생했습니다. 실제로 두 개의 코어와 HT를 갖춘 Core i3가 Core i5 및 Core i7보다 앞서 최고의 성능을 발휘했다고 말할 수 있습니다. 물론 이상하지만 동시에 Core i5와 Core i7은 다시 같은 수준에 있었습니다. 이것을 설명하는 것은 명확하지 않습니다. 아마도 이 게임의 테스트 방법이 여기서 중요한 역할을 했을 것입니다. 이는 표준 벤치마크보다 더 큰 오류를 제공합니다.

지난 테스트에서 F1 2011은 코어 수가 매우 중요한 게임 중 하나임이 입증되었으며, 이번 테스트에서도 하이퍼스레딩 기술이 성능에 미치는 뛰어난 영향으로 우리를 다시 한번 놀라게 했습니다. 그리고 Crysis 2에서와 마찬가지로 HT의 포함은 듀얼 코어 프로세서에서 매우 잘 작동했습니다. 조건부 Core i3과 Pentium의 차이점을 살펴보세요. 두 배 이상입니다! 게임에 두 개의 코어가 매우 부족하고 동시에 코드가 병렬화되어 효과가 놀랍다는 것을 분명히 알 수 있습니다. 반면에 4개의 물리적 코어에 대해서는 논쟁할 수 없습니다. Core i5는 Core i3보다 눈에 띄게 빠릅니다. 그러나 Core i7은 이전 게임과 마찬가지로 Core i5에 비해 뛰어난 성능을 보여주지 못했습니다. 이유는 동일합니다. 게임은 4개 이상의 스레드를 사용할 수 없으며 HT 실행에 따른 오버헤드로 인해 Core i7의 성능이 Core i5 수준 이하로 저하됩니다.

늙은 전사에게는 고슴도치가 티셔츠가 필요한 것처럼 하이퍼 스레딩이 필요하지 않습니다. 그 영향은 F1 2011 또는 Crysis 2만큼 눈에 띄지 않습니다. 그러나 우리는 여전히 듀얼 코어 프로세서에서 HT를 켜는 것에 주목합니다. 프레임을 1개 더 가져왔습니다. Core i3가 Pentium보다 낫다고 말하기에는 확실히 부족합니다. 최소한 이러한 개선은 이러한 프로세서의 가격 차이와 분명히 일치하지 않습니다. 그리고 HT를 지원하지 않는 프로세서가 다시 더 빨라졌기 때문에 Core i5와 Core i7의 가격 차이는 언급할 가치도 없습니다. 눈에 띄게 빨라진 속도는 7%입니다. 누가 뭐라고 말하든 이 게임의 최대 스레드는 4개이므로 이 경우 HyperThreading은 Core i7에 도움이 되지 않고 오히려 방해가 된다는 사실을 다시 한 번 언급합니다.

하이퍼 스레딩 기술(HT, 하이퍼스레딩)은 15년 전인 2002년 Pentium 4 및 Xeon 프로세서에 처음 등장한 이후 Intel 프로세서(Core i 라인, 일부 Atom, 최근에는 Pentium에도 등장)에 등장했습니다. 그런 다음 사라졌습니다(Core 2 Duo 및 Quad 라인에서는 지원되지 않았습니다). 그리고 이 기간 동안 신화적인 속성을 얻었습니다. 그들은 그 존재가 프로세서 성능을 거의 두 배로 늘려 약한 i3를 강력한 i5로 전환한다고 말합니다. 동시에 다른 사람들은 HT가 일반적인 마케팅 전략이며 거의 쓸모가 없다고 말합니다. 진실은 평소와 같이 중간에 있습니다. 어떤 곳에서는 어떤 의미가 있지만 두 배의 증가를 기 대해서는 안됩니다.

기술의 기술적 설명

Intel 웹사이트에 제공된 정의부터 시작해 보겠습니다.

인텔® 하이퍼 스레딩 기술(인텔® HT)은 각 코어에서 여러 스레드를 실행할 수 있도록 하여 프로세서 리소스를 보다 효율적으로 사용할 수 있도록 해줍니다. 성능 측면에서 이 기술은 프로세서의 처리량을 증가시켜 멀티스레드 애플리케이션의 전반적인 성능을 향상시킵니다.

일반적으로 명확한 것은 아무것도 없다는 것이 분명합니다. 일반적인 문구일 뿐이지만 기술을 간략하게 설명합니다. HT를 사용하면 하나의 물리적 코어가 여러(보통 2개) 논리적 스레드를 동시에 처리할 수 있습니다. 하지만 어떻게? 하이퍼스레딩을 지원하는 프로세서:

  • 한 번에 여러 실행 스레드에 대한 정보를 저장할 수 있습니다.
  • 한 세트의 레지스터(즉, 프로세서 내부의 빠른 메모리 블록)와 하나의 인터럽트 컨트롤러(즉, 다른 사용자의 즉각적인 주의가 필요한 이벤트 발생에 대한 요청을 순차적으로 처리하는 기능을 담당하는 내장 프로세서 장치)를 포함합니다. 장치)를 각 논리적 CPU에 대해 지정합니다.
간단한 예를 살펴보겠습니다.

프로세서에 두 가지 작업이 있다고 가정해 보겠습니다. 프로세서에 코어가 하나 있으면 순차적으로 실행하고, 두 개이면 두 개의 코어에서 병렬로 실행하며, 두 작업의 실행 시간은 더 무거운 작업에 소요되는 시간과 같습니다. 하지만 프로세서가 단일 코어이지만 하이퍼스레딩을 지원한다면 어떻게 될까요? 위 그림에서 볼 수 있듯이, 하나의 작업을 수행할 때 프로세서는 100% 사용 중이 아닙니다. 일부 프로세서 블록은 이 작업에 필요하지 않으며 분기 예측 모듈이 오류를 만드는 곳입니다(이는 오류 발생 여부를 예측하는 데 필요함). 조건부 분기는 프로그램에서 실행됩니다), 어딘가에 캐시 액세스 오류가 있는 경우 - 일반적으로 작업을 실행할 때 프로세서 사용량이 70%를 넘지 않습니다. 그리고 HT 기술은 두 번째 작업을 비어 있는 프로세서 블록에 "밀어넣기"만 하면 두 작업이 하나의 코어에서 동시에 처리되는 것으로 나타났습니다. 그러나 두 배의 성능은 명백한 이유로 발생하지 않습니다. 두 작업이 프로세서에서 동일한 컴퓨팅 장치를 필요로 하는 경우가 종종 있으며 간단한 작업이 표시됩니다. 하나의 작업이 처리되는 동안 두 번째 작업의 실행은 단순히 이때 중지됩니다(파란색 사각형 - 첫 번째 작업, 녹색 - 두 번째, 빨간색 - 프로세서의 동일한 블록에 액세스하는 작업).

결과적으로 HT를 사용하는 프로세서가 두 가지 작업에 소비한 시간은 가장 무거운 작업을 계산하는 데 필요한 시간보다 많지만 두 작업을 순차적으로 평가하는 데 필요한 시간보다 적은 것으로 나타났습니다.

기술의 장점과 단점

HT를 지원하는 프로세서 다이가 HT가 없는 프로세서 다이보다 물리적으로 평균 5% 더 크다는 사실(추가 레지스터 블록과 인터럽트 컨트롤러가 차지하는 양)을 고려하면 HT 지원을 통해 프로세서가 90-95% 증가한 경우 HT가 없는 70%와 비교하면 기껏해야 20-30% 증가할 것이라는 것을 알 수 있습니다. 이 수치는 상당히 큽니다.

그러나 모든 것이 그렇게 좋은 것은 아닙니다. HT로 인한 성능 향상이 전혀 없으며 HT가 프로세서 성능을 악화시키는 경우도 있습니다. 이는 여러 가지 이유로 발생합니다.

  • 캐시 메모리가 부족합니다. 예를 들어 최신 쿼드 코어 i5에는 6MB의 L3 캐시(코어당 1.5MB)가 있습니다. HT가 포함된 쿼드 코어 i7에서 캐시는 이미 8MB이지만 논리 코어가 8개이므로 코어당 1MB만 얻습니다. 계산 중에 일부 프로그램에는 이 볼륨이 충분하지 않아 캐시가 줄어들 수 있습니다. 성능.
  • 소프트웨어 최적화가 부족합니다. 가장 기본적인 문제는 프로그램이 논리 코어를 물리적인 것으로 간주한다는 점입니다. 따라서 하나의 코어에서 작업을 병렬로 실행할 때 동일한 계산 단위에 액세스하는 작업으로 인해 지연이 발생하는 경우가 많아 궁극적으로 HT의 성능 향상이 전혀 감소하지 않습니다.
  • 데이터 의존성. 이전 지점에서 이어집니다. 하나의 작업을 완료하려면 다른 작업의 결과가 필요하지만 아직 완료되지 않았습니다. 그리고 다시 가동 중지 시간이 발생하고 CPU 로드가 감소하며 HT에서 약간의 증가가 발생합니다.
하이퍼스레딩과 함께 작동할 수 있는 프로그램

HT 컴퓨팅의 경우 이것은 천국의 만나이기 때문에 열 방출이 실제로 증가하지 않고 프로세서가 훨씬 커지지 않으며 적절한 최적화를 통해 최대 30%까지 증가할 수 있습니다. 따라서 아카이버(WinRar), 2D/3D 모델링용 프로그램(3ds Max, Maya), 사진 및 비디오 처리용 프로그램(Sony Vegas, Photoshop, 코렐 드로우) .

하이퍼스레딩이 잘 안되는 프로그램

전통적으로 이것이 대부분의 게임입니다. 일반적으로 유능한 병렬화가 어렵기 때문에 고주파수(i5 K 시리즈)의 4개의 물리적 코어가 게임에 충분하고, i7의 8개의 논리적 코어를 사용하여 병렬화하는 경우가 많습니다. 불가능한 일. 그러나 백그라운드 프로세스가 있다는 점도 고려해 볼 가치가 있으며 프로세서가 HT를 지원하지 않으면 해당 처리가 물리적 코어에 속해 게임 속도가 느려질 수 있습니다. 여기서는 HT가 포함된 i7이 승리합니다. 모든 백그라운드 작업은 전통적으로 우선순위가 낮으므로 게임의 하나의 물리적 코어와 백그라운드 작업에서 동시에 실행될 때 게임의 우선순위가 높아지고 백그라운드 작업이 코어를 "산만하게" 하지 않습니다. 게임으로 바쁘기 때문에 게임을 스트리밍하거나 녹화하려면 하이퍼스레딩 기능이 있는 i7을 선택하는 것이 좋습니다.

결과

아마도 여기에 남은 질문은 하나뿐입니다. HT가 포함된 프로세서를 사용하는 것이 합리적입니까? 5개의 프로그램을 동시에 열어두고 동시에 게임을 플레이하고 싶거나 사진 처리, 비디오 또는 모델링에 참여하고 싶다면 물론 시도해 볼 가치가 있습니다. 그리고 무거운 프로그램을 시작하기 전에 다른 모든 프로그램을 닫는 데 익숙하고 처리나 모델링에 손을 대지 않는다면 HT 프로세서는 아무 소용이 없습니다.

프로세서 포지셔닝에서 가장 중요한 요소 중 하나 인텔통치자 내부에는 기술이 있습니다 하이퍼스레딩. 또는 오히려 프로세서에 존재하지 않거나 존재합니다. 이 기술은 무엇을 담당합니까? 인텔 하이퍼스레딩, 프로세서 코어(CPU) 자원을 효율적으로 사용하기 위한 기술로, 단일 코어에서 여러 스레드를 동시에 처리할 수 있습니다.

삶과 유사한 시스템의 예를 들어 보겠습니다. 모든 차량을 통제하고 많은 세관원과 차량 진입로를 한 개로 통제하는 국경 초소를 상상해 보십시오. 직원들의 업무 속도와 상관없이 교통 체증이 쌓이고 저절로 프로세스가 느려지는 현상이 발생합니다. 그리고 차선이 하나뿐이라는 점을 감안할 때 직원의 절반은 단순히 지루합니다. 그러다가 갑자기 차량을 위한 또 다른 차선이 열리고 차량이 두 개의 흐름으로 접근하기 시작합니다. 작업 속도가 빨라지고 무료 직원이 작업을 시작하며 국경을 넘으려는 사람들의 교통 정체가 훨씬 줄어듭니다. 그 결과, 통관 규모와 직원 수를 늘리지 않고도 한 포스트의 처리량과 효율성이 높아졌습니다.

가장 강력한 프로세서 코어라도 정보를 신속하게 처리하려면 지체 없이 정보를 수신해야 합니다. 입력 시 데이터의 "교통 체증"이 발생하자마자 프로세서는 유휴 상태가 되어 특정 정보가 처리될 때까지 기다립니다.

이를 방지하기 위해 2002년에 기술이 등장했습니다. 하이퍼스레딩, 시스템의 두 번째 코어 모양을 시뮬레이션하여 코어 용량이 더 빨리 채워졌습니다.

실습에서 알 수 있듯이 기술이 실제로 어떻게 작동하는지 아는 사람은 거의 없습니다. 인텔 하이퍼스레딩. 대부분의 사람들은 프로세서에 몇 개의 추가 가상 코어가 있다고 확신합니다. 그러나 실제로는 코어 수는 변하지 않습니다. 변경되는 것은 스레드 수이며 이는 매우 중요합니다. 단지 각 코어에 추가 입력/출력 채널이 있다는 것뿐입니다. 아래는 실제 작동하는 영상입니다.

HT 기술은 어떻게 작동하며 추가 스트림은 어디에서 제공되나요? 사실 모든 것이 아주 간단합니다. 이 기술을 구현하기 위해 각 코어에 하나의 컨트롤러와 레지스터 세트가 추가됩니다. 따라서 데이터 흐름이 한 채널의 용량보다 커지면 즉시 두 번째 채널이 연결됩니다. 따라서 사용되지 않은 프로세서 블록의 유휴 시간이 제거됩니다.

싱글 코어 프로세서(인텔 펜티엄 4) 시대에 HT 기술은 더 비싼 프로세서(펜티엄 D)를 구입할 수 없는 사람들에게 구원이 되었습니다. 그러나 오늘날 HT가 활성화되면 성능이 저하되는 사례가 알려져 있습니다. 왜 이런 일이 발생합니까? 아주 간단합니다. 데이터를 병렬화하고 프로세스를 적절하게 처리하려면 약간의 프로세서 성능이 필요합니다. 그리고 유휴 블록 없이 정보를 처리할 수 있는 충분한 물리적 코어가 있으면 HT 기술에서 선택한 리소스로 인해 성능이 약간 저하됩니다. 따라서 하이퍼스레딩의 최악의 시나리오는 성능 향상이 부족한 것이 아니라 성능이 저하되는 것입니다. 그러나 실제로 이런 일은 매우 드물게 발생합니다.

8,000번째 Intel Core 프로세서 라인이 출시되면서 이 질문은 특히 중요해졌습니다. 이것이 필요한가요? 하이퍼스레딩조금도? 결국 Core i5 프로세서에도 6개의 코어가 있습니다. 그래픽 처리, 렌더링 등을 위한 전문 애플리케이션에 대해 이야기하지 않는다면 모든 사무용 애플리케이션과 게임에는 6개의 물리적 코어로 충분할 가능성이 있습니다. 따라서 처음에 HT 기술이 프로세서에 최대 30%의 성능을 추가한다고 믿었다면 이제 이것은 공리가 아니며 모든 것은 컴퓨터 작업 스타일과 사용하는 유틸리티 세트에 따라 달라집니다.

물론, 테스트하지 않으면 텍스트가 불완전할 것입니다. 따라서 우리는 우리가 가지고 있는 프로세서를 사용할 것입니다. 인텔 코어 i7 8700K그리고 7700K, 활성화된 프로세서의 성능을 확인합니다. 하이퍼스레딩, 비활성화되었습니다. 테스트 결과에 따라 어떤 애플리케이션 가상 코어가 성능을 추가하고 어떤 애플리케이션이 눈에 띄지 않는지 명확해집니다.

인기 있는 3DMark는 코어와 스레드의 증가에 특히 쉽게 반응하지 않습니다. 증가는 있지만 미미합니다.

다양한 유형의 계산 및 처리에서는 항상 커널과 스레드가 지배했습니다. 여기에서는 하이퍼스레딩이 꼭 필요합니다. 이는 성능을 크게 향상시킵니다.

게임에서는 상황이 더 간단합니다. 대부분의 경우 스레드 수를 늘려도 결과가 생성되지 않습니다. 게임의 경우 물리적 코어 4개면 충분하며 대부분의 경우 그보다 적습니다. 유일한 예외는 GTA5였는데, 이는 HT 비활성화에 매우 잘 반응하고 7%의 성능을 추가했으며 6코어 8700K 프로세서에서만 가능했습니다. 7700K에서 멀티스레딩을 비활성화해도 아무런 결과가 나오지 않았습니다. 벤치마크를 여러 번 실행했지만 결과는 변하지 않았습니다. 그러나 이것은 오히려 규칙의 예외입니다. 테스트된 모든 게임은 4개의 코어로 쉽게 만족됩니다.

라인 내에서 Intel 프로세서를 포지셔닝하는 데 가장 중요한 요소 중 하나는 하이퍼스레딩 기술입니다. 또는 오히려 프로세서에 존재하지 않거나 존재합니다. 이 기술은 무엇을 담당합니까? Intel Hyper-Threading은 프로세서 코어(CPU)의 자원을 효율적으로 사용하기 위한 기술로, 하나의 코어에서 여러 스레드를 동시에 처리할 수 있습니다. 인생에서 비슷한 시스템의 예를 들어 보겠습니다. 모든 차량을 통제하고 많은 세관원과 차량 진입로를 한 개만 갖춘 국경 초소를 상상해 보세요. 직원들의 업무 속도와 상관없이 교통 체증이 쌓이고 저절로 프로세스가 느려지는 현상이 발생합니다. 그리고 차선이 하나뿐이라는 점을 감안할 때 직원의 절반은 단순히 지루합니다. 그러다가 갑자기 차량을 위한 또 다른 차선이 열리고 차량이 두 개의 흐름으로 접근하기 시작합니다. 작업 속도가 빨라지고 무료 직원이 작업을 시작하며 국경을 넘으려는 사람들의 교통 정체가 훨씬 줄어듭니다. 그 결과, 통관 규모와 직원 수를 늘리지 않고도 한 포스트의 처리량과 효율성이 높아졌습니다. 가장 강력한 프로세서 코어라도 정보를 신속하게 처리하려면 지체 없이 정보를 수신해야 합니다. 입력 시 데이터의 "교통 체증"이 발생하자마자 프로세서는 유휴 상태가 되어 특정 정보가 처리될 때까지 기다립니다. 이를 방지하기 위해 2002년에 시스템의 두 번째 코어 모양을 시뮬레이션하는 하이퍼 스레딩 기술이 등장하여 코어 용량이 더 빨리 채워졌습니다. 실습에서 알 수 있듯이 Intel 하이퍼스레딩 기술이 실제로 어떻게 작동하는지 아는 사람은 거의 없습니다. 대부분의 사람들은 프로세서에 몇 개의 추가 가상 코어가 있다고 확신합니다. 그러나 실제로는 코어 수는 변하지 않고 스레드 수만 변경되며 이는 매우 중요합니다. 단지 각 코어에 추가 입력/출력 채널이 있다는 것뿐입니다. 아래는 실제 작동하는 영상입니다. HT 기술은 어떻게 작동하며 추가 스트림은 어디에서 제공되나요? 사실 모든 것이 아주 간단합니다. 이 기술을 구현하기 위해 각 코어에 하나의 컨트롤러와 레지스터 세트가 추가됩니다. 따라서 데이터 흐름이 한 채널의 용량보다 커지면 즉시 두 번째 채널이 연결됩니다. 따라서 사용되지 않은 프로세서 블록의 유휴 시간이 제거됩니다. 싱글 코어 프로세서(인텔 펜티엄 4) 시대에 HT 기술은 더 비싼 프로세서(펜티엄 D)를 구입할 수 없는 사람들에게 구원이 되었습니다. 그러나 오늘날 HT가 활성화되면 성능이 저하되는 사례가 알려져 있습니다. 왜 이런 일이 발생합니까? 아주 간단합니다. 데이터를 병렬화하고 프로세스를 적절하게 처리하려면 약간의 프로세서 성능이 필요합니다. 그리고 유휴 블록 없이 정보를 처리할 수 있는 충분한 물리적 코어가 있으면 HT 기술에서 선택한 리소스로 인해 성능이 약간 저하됩니다. 따라서 하이퍼스레딩의 최악의 시나리오는 성능 향상이 부족한 것이 아니라 성능이 저하되는 것입니다. 그러나 실제로 이런 일은 매우 드물게 발생합니다. 8,000번째 Intel Core 프로세서 라인이 출시되면서 이 질문이 특히 중요해졌습니다. 하이퍼 스레딩이 전혀 필요한가요? 결국 Core i5 프로세서에도 6개의 코어가 있습니다. 그래픽 처리, 렌더링 등을 위한 전문 애플리케이션에 대해 이야기하지 않는다면 모든 사무용 애플리케이션과 게임에는 6개의 물리적 코어로 충분할 가능성이 있습니다. 따라서 처음에 HT 기술이 프로세서에 최대 30%의 성능을 추가한다고 믿었다면 이제 이것은 공리가 아니며 모든 것은 컴퓨터 작업 스타일과 사용하는 유틸리티 세트에 따라 달라집니다. 물론, 본문은...