Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1039002
  • 博文数量: 836
  • 博客积分: 43880
  • 博客等级: 大将
  • 技术积分: 5485
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-20 17:36
文章分类

全部博文(836)

文章存档

2011年(1)

2008年(835)

我的朋友

分类: LINUX

2008-08-20 18:25:51


#Cat/proc/cpuinfo linux下 /proc/cpuinfo 文件会显示cpu的信息 processor会从0开始记数继续下去多个cpu flags如果有ht说明支持超线程技术 判断物理CPU的个数可以查看physicalid的值,相同则为同一个物理CPU processor:4 vendor_id:GenuineIntel cpufamily:15 model:4 modelname:Intel(R)Xeon(TM)CPU3.00GHz stepping:8 cpuMHz:3002.700 cachesize:2048KB physicalid:9 siblings:4 coreid:19 cpucores:2 ------------------------------ processor:5 vendor_id:GenuineIntel cpufamily:15 model:4 modelname:Intel(R)Xeon(TM)CPU3.00GHz stepping:8 cpuMHz:3002.700 cachesize:2048KB physicalid:9 siblings:4 coreid:19 cpucores:2 ----------------------------------------------- addresssizes:40bitsphysical,48bitsvirtual powermanagement: 关键词:SMPlinux多CPU个数超线程HTHyper-Threading 摘抄一些网上的相关知识: 超线程技术就是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让单个处理器都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高的CPU的运行效率。 采用超线程及时可在同一时间里,应用程序可以使用芯片的不同部分。虽然单线程芯片每秒钟能够处理成千上万条指令,但是在任一时刻只能够对一条指令进行操作。而超线程技术可以使芯片同时进行多线程处理,使芯片性能得到提升。 超线程技术是在一颗CPU同时执行多个程序而共同分享一颗CPU内的资源,理论上要像两颗CPU一样在同一时间执行两个线程,P4处理器需要多加入一个LogicalCPUPointer(逻辑处理单元)。因此新一代的P4HT的die的面积比以往的P4增大了5%。而其余部分如ALU(整数运算单元)、FPU(浮点运算单元)、L2Cache(二级缓存)则保持不变,这些部分是被分享的。 虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每个CPU都具有独立的资源。当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。因此超线程的性能并不等于两颗CPU的性能。 英特尔P4超线程有两个运行模式,SingleTaskMode(单任务模式)及MultiTaskMode(多任务模式),当程序不支持Multi-Processing(多处理器作业)时,系统会停止其中一个逻辑CPU的运行,把资源集中于单个逻辑CPU中,让单线程程序不会因其中一个逻辑CPU闲置而减低性能,但由于被停止运行的逻辑CPU还是会等待工作,占用一定的资源,因此Hyper-ThreadingCPU运行SingleTaskMode程序模式时,有可能达不到不带超线程功能的CPU性能,但性能差距不会太大。也就是说,当运行单线程运用软件时,超线程技术甚至会降低系统性能,尤其在多线程操作系统运行单线程软件时容易出现此问题。 (责任编辑:凌云通)


下载本文示例代码
阅读(267) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~