ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 在linux中查看cpu个数方法

在linux中查看cpu个数方法

原创 Linux操作系统 作者:perfychi 时间:2012-06-15 15:08:14 0 删除 编辑

在linux中查看cpu个数方法

2011-05-24 11:00:41  www.hackbase.com  来源:互联网
  在linux中查看cpu个数方法   对超线程cpu来说
  在linux中查看cpu个数方法
  (1)对超线程cpu来说
  cat /proc/cpuinfo | grep pysical | grep id
  如:[root@app ~]# cat /proc/cpuinfo | grep physical | grep id
  physical id      : 0
  physical id      : 3
  physical id      : 0
  physical id      : 3
  看到physical相同的则视为同一个物理cpu(对超线程cpu来说)
  (2)普通cpu来说:
  cat /proc/cpuinfo | grep processor
  就可以,当然你也可以直接统计cpu个数
  cat /proc/cpuinfo | grep processor | wc -l
  查看内存详细情况
  1.cat /proc/meminfo
  2. free
  3.top
  ------------------------------------------------------------
  详细情况描述
  linux 下
  cat   /proc/cpuinfo
  文件会显示cpu的信息
  processor 会从0开始记数 继续下去多个cpu
  flags 如果有 ht 说明支持超线程技术
  判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理 CPU
  processor : 4
  vendor_id : GenuineIntel
  cpu family : 15
  model : 4
  model name : Intel(R) Xeon(TM) CPU 3.00GHz
  stepping : 8
  cpu MHz : 3002.700
  cache size : 2048 KB
  physical id : 9
  siblings : 4
  core id : 19
  cpu cores : 2
  ------------------------------
  processor : 5
  vendor_id : GenuineIntel
  cpu family : 15
  model : 4
  model name : Intel(R) Xeon(TM) CPU 3.00GHz
  stepping : 8
  cpu MHz : 3002.700
  cache size : 2048 KB
  physical id : 9
  siblings : 4
  core id : 19
  cpu cores : 2
  -----------------------------------------------
  address sizes : 40 bits physical, 48 bits virtual
  power management:
  关键词: SMP linux 多CPU个数 超线程HT Hyper-Threading
  摘抄一些网上的相关知识:
  超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,
  进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行效率。
  采用超线程及时可在同一时间里,应用程序可以使用芯片的不同部分。虽然单线程芯片每秒钟能够处理成千上万条指令,
  但是在任一时刻只能够对一条指令进行操作。而超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。
  超线程技术是在一颗CPU同时执行多个程序而共同分享一颗CPU内的资源,理论上要像两颗CPU一样在同一时间执行两个线程,
  P4处理器需要多加入一个Logical CPU Pointer(逻辑处理单元)。因此新一代的P4 HT的die的面积比以往的P4增大了5%。
  而其余部分如ALU(整数运算单元)、FPU(浮点运算单元)、L2 Cache(二级缓存)则保持不变,这些部分是被分享的。
  虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每个CPU都具有独立的资源。
  当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。
  因此超线程的性能并不等于两颗CPU的性能。
  英特尔P4 超线程有两个运行模式,Single Task Mode(单任务模式)及Multi Task Mode(多任务模式)   ,
  当程序不支持Multi-Processing(多处理器作业)时,系统会停止其中一个逻辑CPU的运行,把资源集中于单个逻辑 CPU中,
  让单线程程序不会因其中一个逻辑CPU闲置而减低性能,但由于被停止运行的逻辑CPU还是会等待工作,占用一定的资源,
  因此Hyper- Threading CPU运行Single Task Mode程序模式时,有可能达不到不带超线程功能的CPU性能,但性能差距不会太大。
  也就是说,当运行单线程运用软件时,超线程技术甚至会降低系统性能,尤其在多线程操作系统运行单线程软件时容易出现此问题。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27042095/viewspace-732939/,如需转载,请注明出处,否则将追究法律责任。

上一篇: exp1
请登录后发表评论 登录
全部评论

注册时间:2012-06-06

  • 博文量
    486
  • 访问量
    2626423