CPU知识(CPU个数、CPU核心数、CPU线程数、多核CPU等

  • CPU个数、CPU核心数、CPU线程数
  • 多核CPU
  • 单核多CPU与多核单CPU

今天看到服务器中有8核8线程和8核16线程的区分,觉得有点懵逼,随后百度搜到网上一盘文章,觉得写得不错,记录一下方便以后自己查看。
原文出自:https://www.cnblogs.com/kimsimple/p/7787018.html

CPU个数、CPU核心数、CPU线程数

我们在选购电脑的时候,CPU是一个需要考虑到核心因素,因为它决定了电脑的性能等级。CPU从早期的单核,发展到现在的双核,多核。CPU除了核心数之外,还有线程数之说,下面文本就来解释一下CPU的核心数与线程数的关系和区别。

CPU个数即CPU芯片个数

CPU的核心数是指物理上,也就是硬件上存在着几个核心。比如,双核就是包括2个相对独立的CPU核心单元组,四核就包含4个相对独立的CPU核心单元组。

线程数是一种逻辑的概念,简单地说,就是模拟出的CPU核心数。比如,可以通过一个CPU核心数模拟出2线程的CPU,也就是说,这个单核心的CPU被模拟成了一个类似双核心CPU的功能。我们从任务管理器的性能标签页中看到的是两个CPU。 比如Inte l赛扬G460是单核心,双线程的CPU,Intel 酷睿i3 3220是双核心 四线程,Intel 酷睿i7 4770K是四核心 八线程 ,Intel 酷睿i5 4570是四核心 四线程等等。 对于一个CPU,线程数总是大于或等于核心数的。一个核心最少对应一个线程,但通过超线程技术,一个核心可以对应两个线程,也就是说它可以同时运行两个线程。

CPU的线程数概念仅仅只针对Intel的CPU才有用,因为它是通过Intel超线程技术来实现的,最早应用在Pentium4上。如果没有超线程技术,一个CPU核心对应一个线程。所以,对于AMD的CPU来说,只有核心数的概念,没有线程数的概念。

CPU之所以要增加线程数,是源于多任务处理的需要。线程数越多,越有利于同时运行多个程序,因为线程数等同于在某个瞬间CPU能同时并行处理的任务数。 因此,线程数是一种逻辑的概念,简单地说,就是模拟出的 CPU 核心数。一个核心最少对应一个线程,但英特尔有个超线程技术可以把一个物理线程模拟出两个线程来用,充分发挥 CPU 性能,即一个核心可以有两个到多个线程。

设计决定,intel给他的x86设计了逻辑线程=2物理核心数,ibm的power8是逻辑线程=8物理核心数

Hyper-Threading,超线程

多核CPU

多核心cpu主要分原生多核和封装多核
  原生多核指的是真正意义上的多核,最早由AMD提出,每个核心之间都是完全独立的,都拥有自己的前端总线,不会造成冲突,即使在高负载状况下,每个核心都能保证自己的性能不受太大的影响,通俗的说,原生多核的抗压能力强,但是需要先进的工艺,每扩展一个核心都需要很多的研发时间。
  封装多核是只把多个核心直接封装在一起,比如Intel早期的PD双核系列,就是把两个单核直接封装在一起,但两核心只能共同拥有一条前端总线,在两个核心满载时,两个核心会争抢前端总线,导致性能大幅度下降,所以早期的PD被扣上了“高频低能”的帽子,要提高封装多核的性能,在多任务的高压下尽量减少性能损失,只能不断的扩大前端总线的总体大小,来弥补多核心争抢资源带来的性能损失,但这样做只能在一定程度上弥补性能的不足,和原生的比起来还是差了很多,而且后者成本比较高,优点在于多核心的发展要比原生快的多。

核心(Die)又称为内核,是CPU最重要的组成部分。CPU中心那块隆起的芯片就是核心,是由单晶硅以一定的生产工艺制造出来的,CPU所有的计算、接受/存储命令、处理数据都由核心执行。各种CPU核心都具有固定的逻辑结构,一级缓存、二级缓存、执行单元、指令级单元和总线接口等逻辑单元都会有科学的布局。

双内核应该具备两个物理上的运算内核

HT技术是超线程技术,是造就了PENTIUM 4的一个辉煌时代的武器,尽管它被评为失败的技术,但是却对P4起一定推广作用,双核心处理器是全新推出的处理器类别;HT技术是在处理器实现2个逻辑处理器,是充分利用处理器资源,双核心处理器是集成2个物理核心,是实际意义上的双核心处理器。

多核心处理器(英语:Multi-core processor),又称多核心微处理器,是在单个计算组件中,加入两个或以上的独立实体中央处理单元(简称核心,英语:Core)。这些核心可以分别独立地运行程序指令,利用并行计算的能力加快程序的运行速度。只有两个核心的处理器,称为双核心处理器(dual-core processor)。“多核心”通常是对于中央处理器(Central Processing Unit,CPU)而论的,但是某些时候也指数字信号处理器(DSP)和系统芯片(SoC)。

通常,把将两个或更多独立处理器(CPU)封装在一个单一集成电路(IC)中的方案称为多核心处理器;而封装在不同IC中的独立处理器形成的计算机系统被称为多处理器系统

多核心处理器 != 多处理器系统

多核心处理器可以在不将每个核心分别独立物理封装的情况下进行多任务处理(线程级并发处理(Thread-Level Parallelism,TLP),这种形式的TLP通常被认为是芯片级多处理)。

单核多CPU与多核单CPU

一台计算机的处理器部分的架构

单核多CPU,那么每一个CPU都需要有较为独立的电路支持,有自己的Cache,而他们之间通过板上的总线进行通信。(一致性问题)

假如在这样的架构上,我们要跑一个多线程的程序(常见典型情况),不考虑超线程,那么每一个线程就要跑在一个独立的CPU上,线程间的所有协作都要走总线,而共享的数据更是有可能要在好几个Cache里同时存在。这样的话,总线开销相比较而言是很大的,怎么办?那么多Cache,即使我们不心疼存储能力的浪费,一致性怎么保证?
多核单CPU,那么我们只需要一套芯片组,一套存储,多核之间通过芯片内部总线进行通信,共享使用内存。在这样的架构上,如果我们跑一个多线程的程序,那么线程间通信将比上一种情形更快。

单核多CPU常见于分布式系统,用于普通消费级市场的不多,多用于cluster,云计算平台什么的。单核多CPU架构最大的瓶颈就是I/O,尤其是各个CPU之间的通讯,低成本的都用100M以太网做,稍微好一点的用1000M以太网,再好的就用光纤等等,但无论如何速度和通量都比不上主板的主线。所以单核多CPU适用于大计算量,对速度(时间)不(太)敏感的任务,比如一些工程建模,或者像SATI找外星人这种极端的,跑上几千年都不着急的。而且单核多CPU架构更简单清晰,可以用消费级产品简单做数量堆叠,成本上有优势。而多核单CPU则适合对通讯I/O速度要求较快的应用,(相同核数量下)成本上也高一些,好像只有在超级计算机里会用到以万为单位的核心数,普通消费级产品也就是到16核封顶了,因为成本控制的原因。

在Windows中,在cmd命令中输入“wmic”,然后在出现的新窗口中分别输入“cpu get Name”,“cpu get NumberOfCores”,“cpu get NumberOfLogicalProcessors”即可查看物理CPU数、CPU核心数、线程数。
如下图所示:

Name:表示物理CPU数
NumberOfCores:表示CPU核心数
NumberOfLogicalProcessors:表示CPU线程数
注释:VM虚拟机中的CPU选择的核心数实际是代表线程数。

输入“cpu get *”也可

2.在cmd命令中输入“systeminfo”,以下信息表示物理CPU有两个

感谢http://swiftlet.net/archives/2236

CPU知识(CPU个数、CPU核心数、CPU线程数、多核CPU等)相关推荐

  1. CPU个数,核心数,线程数

    我们在买电脑的时候,经常会看cpu的参数,对cpu的描述有这几种:"双核"."双核四线程"."四核"."四核四线程".& ...

  2. Windows下查看电脑的CPU个数,核心数,线程数

    首先,需要知道的是: 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 ###1.查看物理CPU的个数 在cmd命令中输 ...

  3. 【转】CPU个数,核心数,线程数

    我们在买电脑的时候,经常会看cpu的参数,对cpu的描述有这几种:"双核"."双核四线程"."四核"."四核四线程".& ...

  4. CPU的个数,核心数,线程数

    CPU 总核数 = 物理CPU个数 X 每颗物理CPU的核数 总逻辑CPU数(线程数) = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 CPU的个数 CPU 的个数即CPU芯片的个数,对与 ...

  5. CPU数,核心数,线程数的关系

    1.CPU数,核心数,线程数的关系 1.存在形式不同: (1)CPU数:独立的中央处理单元,体现在主板上就是有多少个CPU槽位 (2)CPU核心数(CPU cores):在每一个CPU上,都可能有多核 ...

  6. 线程共享和协作(一):CPU核心数,线程数,时间片轮转机制解读

    CPU核心数,线程数 CPU个数.核心数.线程数的关系: CPU个数:是指物理上,即硬件上的核心数: 核心数:是逻辑上的,简单理解为逻辑上模拟出的核心数: 线程数:是同一时刻设备能并行执行的程序个数, ...

  7. java线程运行的时间片长度_CPU核心数,线程数,时间片轮转机制解读

    CPU核心数,线程数 CPU个数.核心数.线程数的关系: CPU个数:是指物理上,即硬件上的核心数: 核心数:是逻辑上的,简单理解为逻辑上模拟出的核心数: 线程数:是同一时刻设备能并行执行的程序个数, ...

  8. Linux查看系统cpu个数、核心书、线程数

    Linux查看系统cpu个数.核心书.线程数 现在cpu核心数.线程数越来越高,本文将带你了解如何确定一台服务器有多少个cpu.每个cpu有几个核心.每个核心有几个线程. 查看物理cpu个数 cat ...

  9. 查看linux线程个数,linux查看cpu个数,线程数及cpu型号

    1.查看CPU逻辑id grep 'physical id' /proc/cpuinfo | sort -u physical id : 0 physical id: 1 2.查看物理CPU个数 $ ...

  10. cpu的核数和进程_CPU核数和线程数有什么用?什么意思?CPU核数和线程的关系与区别...

    我们在组装电脑选购硬件的时候,大多数的人群更在乎CPU的性能,除了考虑架构.工艺.单核性能等,还需要考虑核心和线程数量,CPU从早期的单核,发展到现在的双核.多核,除了核心数量之外,还有线程数量.那么 ...

最新文章

  1. python enumerate 行号 序号
  2. ​linux中使用文本工具截取ip 的几种方法
  3. 完整叙述html的语法结构,html article介绍与语法结构
  4. x264 移植到 ARM的方法
  5. mysql+影响的行数+获取_CI中获取读操作的结果集行数+获取写操作的影响行数
  6. ios 企业签名证书购买_iOS苹果企业签名须知
  7. MT4指标安装方法,以MACD红绿柱黄白线双线macd为例
  8. 拓扑排序算法(1.0版)
  9. 硬件基础知识笔记(二极管、三极管、MOS管、运放、滤波器、跟随器、整流)
  10. Linux 克隆虚拟机以及克隆之后引起的“Device eth0 does not seem to be present, delaying initialization”问题解决...
  11. jQuery从上手到飞天
  12. IT的道德和伦理-个人隐私
  13. 使用Excel时计算剩余时间
  14. TDS510-USB2.0驱动
  15. java基于springboot+vue校园车辆管理系统
  16. sem竞价账户怎么提升效果提高转化
  17. 面向对象开发期末复习概述(二)
  18. 新型Linux恶意软件隐藏在无效日期中、黑客通过微软漏洞监视目标电脑|11月26日全球网络安全热点
  19. 从管理的角度分享技术 TL 的核心职责:包括沟通与辅导、招聘与解雇等
  20. Android 编程实用代码大全

热门文章

  1. 王者荣耀更换logo设计了,你“get”到它的含义了吗?
  2. java-php-python-ssm网上拍卖系统2021计算机毕业设计
  3. 电话销售如何避免打电话被封呢?
  4. 158页完整版(5万字)数字化智慧停车场管理解决方案
  5. 无线振动传感器之利:实现设备远程监控和管理
  6. qpython3苹果下载软件_QPython3下载
  7. linux针对端口进行抓包,tcpdump抓包使用详解
  8. 中国地面气候资料日值数据集(V3.0)数据说明以及数据处理
  9. #Z0060. Peaks
  10. Java字节数组转换成十六进制字符串的几种方法