兴宁528 发表于 2012/2/6 23:49

验证网上传言 超线程技术能用软件模拟吗?

  近日,网上各大DIY论坛流传着一个号称能够模拟“超线程技术”(Hyper Threading,以下简称HT)的软件—Process tamer,据说它能在运行大型应用软件的情况下,仍可顺畅地操作Windows系统及使用其他软件,就像使用了具备HT功能的CPU一样。这个软件是真是假?下面笔者就为大家一下它的真正玄机。<BR><BR><B>一、为什么HT能使系统运行更顺畅?</B><BR><BR>  众所周知,单核心CPU在同一时间内只能执行一个线程(thread),而一般软件也是按照“单线程”(-threaded)来设计开发的。我们平时在Windows系统下能进行多工操作,其实是操作系统在不断地切换不同程序的线程。由于 4 Netburst架构处理器的特长是管线级(Pipeline Stage)处理设计,一个线程通常难以利用完所有运算单元,从而使部分运算单元处于闲置状态。<BR><BR>  为了使处理器的使用率(Utilization)提高,intel公司于是开发出HT技术,即增加一个逻辑运算单元(Logical Unit),使操作系统认为有两块处理器在工作,同时执行两条线程,让一块HT CPU同时运算两条线程的指令。<BR><BR>  在只有单个线程运算时,系统会发出HALT指令暂停逻辑运算单元,此时处理器工作在单工(Single Task)模式,优点是让所有资源能集中运算;相反,在两个线程同时运算时,第二个逻辑运算单元便会启动,CPU转为多工(Multi Task)模式,使CPU资源能平均分配给两个线程。由于两个程序同时执行的资源平均分配,所以即使有一个大型软件在运行,系统的仍佳(这里假设该软件是单线程设计,如果软件是多线程设计,就会耗尽HT CPU的所有资源,而使得系统反应变慢。<BR><BR><B>二、Process tamer软件的工作原理</B><BR><BR>  说了一大堆HT理论,其实与本文介绍的Process Tamer软件的工作原理毫无关系!所以网友声称它能模拟HT的说法是错误的。上文提及普通单核心处理器是通过不断切换当前运算的线程,借此来达到多工操作的目的。其实,Windows本身设有Priority(优先级)制度,决定程序使用CPU资源的先后次序。<BR><BR>  优先级越高便可以优先使用CPU资源。而Process Tamer软件的做法是监视所有运行中的程序,当发现有程序长期占用大量CPU资源时,就自动降低其优先级,让CPU资源能分配给其他程序使用,从而使系统反应灵敏,达到近似HT系统的效果。事实上,降低优先级会使软件得到的CPU资源减少,使运算时间更长,所以与真正的HT CPU甚至双核心CPU绝对不能相比。不过,对于经常在后台运行大型软件(如将DVD压缩为MPEG4或RMVB视频)的用户则有一定帮助。<BR><BR><B>三、Process Tamer应用实战</B><BR><BR>  尽管功能独特,Process Tamer的使用方法却并不复杂。运行此软件后,它会长驻Windows的任务栏上,当有程序霸占CPU资源一段时间后,Process Tamer就会自动降低该程序的优先级,并弹出提出信息告知用户。<BR>
<P align=center><IMG src="http://myhard.yesky.com/imagelist/05/12/zp2d5sg7e67w.jpg"></P>  此时,用户运行Windows自带的任务管理器(调用方法为同时按Ctrl+Alt+Del组合键),可见该程序的优先级已被降至“低”,CPU资源已经给予其他程序作优先使用,因为一般程序预设的优先级为“标准”。而当程序不再占用大量CPU资源时,Process Tamer也会自动提升该程序的优先级。<BR>
<P align=center><IMG src="http://myhard.yesky.com/imagelist/05/12/81456rfm9dgl.jpg"></P>  功能设置方面,Process Tamer也比较简单。在其主操作界面上有两个标笺页,其中:“Processes”标笺页能显示当前运行的程序及它们的CPU使用率<p><div align="right">本新闻共<font color=red>2</font>页,当前在第<font color=red>1</font>页&nbsp;&nbsp;<font color="red">1</font>&nbsp;&nbsp;&nbsp;&nbsp;</div></p>
页: [1]
查看完整版本: 验证网上传言 超线程技术能用软件模拟吗?