최근에 하나 구입했어요i5-9600K. /proc/cpuinfo
플래그가 켜져 있는지 확인하고 아래 그림과 같이 ht
6개의 코어만 표시되는지 확인하면 6개의 코어와 6개의 스레드(하이퍼 스레딩)를 실행해야 합니다 .htop
다른 Intel 및 AMD 프로세서를 사용해 본 적이 있으며 일반적으로 제품에 6 cores/6 threads
총계가 표시될 때 가 표시되지만 12
이 경우에는 6
.
내가 틀렸나요? 아니면 뭔가 문제가 있는 걸까요?
감사합니다!
답변1
아래로 스크롤하면CPU용 Ark 페이지, 다음과 같이 표시됩니다.
인텔® 하이퍼스레딩 기술‡ 아니요
CPU에는 6개의 코어가 있지만 하이퍼스레딩을 지원하지 않으므로 디스플레이가 htop
정확합니다.
Ark의 CPU 사양에는 추가 또는 곱셈이 포함되지 않은 전체 스레드 수가 표시됩니다.제온 E3-1245v3하이퍼 스레딩(4개 코어, 코어당 2개 스레드, 총 8개 스레드)을 지원하는 CPU의 경우.
기본 CPUID 플래그의 이름은 ht
다소 오해의 소지가 있습니다.인텔의 매뉴얼(볼륨 3A, 섹션 8.6)에는 "물리적 패키지가 Intel 하이퍼스레딩 기술 및/또는 멀티 코어를 지원할 수 있음을 나타내기 위해 설정"된 것으로 설명되어 있습니다. 따라서 해당 항목이 있다는 것은 CPU가 하이퍼스레딩을 지원하거나(비활성화된 경우에도), 동일한 패키지에 여러 코어가 포함되어 있거나, 둘 다를 의미함을 나타냅니다. 실제로 무엇이 있는지 확인하려면 펌웨어에서 제공하는 정보를 사용하여 시스템의 CPU를 열거하고 제공된 정보를 사용하여 여러 개의 논리 코어가 있는지, 물리적 코어 수, 소켓 수 등을 확인해야 합니다. 와 달리 htop
(및 기타 도구)에 표시된 "CPU"는 스레드(하이퍼 스레드 시스템의 경우), 물리적 코어(하이퍼 스레드가 아닌 시스템의 경우) 또는 전체 코어일 수도 있습니다. 패키지(하이퍼 스레드가 아닌 시스템의 경우), 단일 코어 시스템의 경우).
lscpu
Linux 커널은 이 모든 감지를 수행하며 예를 들어 다음을 사용하여 결과를 볼 수 있습니다 .
최소한 CPU는 하이퍼스레딩 관련 취약점의 영향을 받지 않습니다!
답변2
이 맥락에서 "스레드"는 "논리적 코어"와 동의어입니다.모두이를 구현하는 물리적 코어 수에 관계없이 논리적 코어 수입니다. 추가 스레드가 아닙니다.
CPU에는 6개의 논리 코어가 있으므로 Linux를 부팅하면 6개의 CPU가 "표시"됩니다.
CPU에는 6개의 물리적 코어가 있으므로 Intel과 하나의 물리적 코어를 공유하는 한 쌍의 논리적 코어가 아닌 각 논리적 코어에는 완전한 물리적 코어가 있습니다.표면 실장 기술, 그들은 그것을 하이퍼스레딩이라고 부릅니다.
다른 Intel 및 AMD 프로세서를 사용해 본 적이 있으며 일반적으로 제품에 6코어/6스레드가 표시되면 총 12개입니다.
[인용 필요]. 2c4t(2개의 물리적 코어, 4개의 논리적 코어)와 같은 용어는 수년간 x86뿐만 아니라 모든 아키텍처의 표준이었습니다.
나는 N개의 "실제" 코어 + N개의 "추가" 스레드로 설명된 것을 본 적이 없습니다. 왜냐하면 그것은 단순히 작동 방식이 아니기 때문입니다. 두 논리 코어는 모두 "대칭"이므로 특별히 활성화할 필요가 없습니다. 각각은 완전한 CPU 역할을 합니다. (한 쪽이 유휴 깊은 절전 모드에 있으면 다른 쪽은 단일 스레드 모드로 들어가 모든 실행 리소스를 얻을 수 있습니다. 둘 다 절전 모드에 있으면 물리적 코어가 실제로 절전 모드에 들어갈 수 있습니다.)
재미있는 사실: 운영 체제의 하이퍼스레딩 지원을 통해 운영 체제는 CPUID 데이터 및/또는 APIC/LAPIC 인터럽트 컨트롤러 내용을 읽어 물리적 코어를 공유하는 논리 코어를 결정할 수 있습니다. 하이퍼스레딩에 대해 모르는 OS는 여전히 부팅되어 CPU가 지원하는 논리 코어 수를 확인하고(BIOS에서 HT가 활성화된 상태에서) 2개의 작업을 하나로 예약할 수 있다는 점을 제외하면 모든 것이 잘 작동할 것이라고 생각합니다. 다른 코어와 경쟁하는 코어는 다른 물리적 코어를 유휴 상태로 두고 실행 리소스를 두고 서로 경쟁합니다.
일부 CPU에는 양방향 SMT 이상이 있습니다. 예를 들어, Xeon Phi는 메모리와 ALU 대기 시간을 숨기고 많은 비순차적 실행 리소스를 요구하지 않고 우수한 전체 처리량을 얻기 위한 방법으로 4방향 SMT(물리적 코어당 논리 코어 4개)를 갖추고 있습니다.
IBM POWER는 대규모 물리적 코어에서 8방향 SMT를 사용합니다.
답변3
다른 프로세서를 보면i7-10710uIntel의 정보에 따르면 6개의 코어와 12개의 스레드가 있으므로 CPU에는 예상한 2개가 아닌 코어당 1개의 스레드만 있는 것으로 보입니다.