[unix] CPU와 코어의 차이점은 무엇입니까?

lscpu내 PC 의 출력은 다음과 같습니다.

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 69
Stepping:              1
CPU MHz:               1200.093
BogoMIPS:              3392.08
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              3072K
NUMA node0 CPU(s):     0-3

내가 4 CPU와 2 코어를 의미합니까?



답변

보낸 사람 man lscpu:

CPU
Linux 커널에서 사용하는 CPU 의 논리적 CPU 번호입니다.

CORE
논리 코어 번호입니다. 코어에는 여러 개의 CPU가 포함될 수 있습니다.

SOCKET
논리 소켓 번호. 소켓에는 여러 개의 코어가 포함될 수 있습니다.

그렇습니다. 실제 2 개의 코어에 4 개의 CPU가 있고 하나의 물리적 소켓에 있습니다.

에서 동일한 정보를 얻을 수 있습니다 cat /proc/cpuinfo.

관련 질문 : 그렇다면 물리적 CPU 코어와 달리 논리적 CPU 코어는 무엇입니까?


답변

논리 프로세서와 물리 프로세서의 혼동을 피하려면

인텔은 물리적 프로세서소켓이라고합니다 .

하이퍼 스레딩 기술을 사용하면 단일 프로세서 코어가 두 개의 독립 스레드를 동시에 실행할 수 있습니다.

하이퍼 스레딩은 시스템 성능을 두 배로 늘리지는 않지만 유휴 리소스를 더 잘 활용하여 성능을 향상시켜 특정 중요한 워크로드 유형에 대한 처리량을 높일 수 있습니다. 사용중인 코어의 하나의 논리 프로세서에서 실행되는 응용 프로그램은 비스 레드 스레드 프로세서에서 단독으로 실행하는 동안 얻는 처리량의 절반 이상을 기대할 수 있습니다.

요약

  • 시스템에는 하나의 물리적 CPU가 있습니다 (이름을 X라고 함).
  • 하이퍼 스레딩은 CPU X가 두 개의 CPU (CPU-X1 및 CPU-X2)처럼 작동하지만 물리적으로는 작동하지 않습니다.
  • 각 X1과 X2는 한 번에 두 개의 스레드를 동시에 실행할 수 있습니다

요약하면 4 개의 스레드를 동시에 실행할 수있는 하나의 물리적 프로세서가 있습니다.


답변