科技时代新浪首页 > 科技时代 > 硬件 > 正文

测试软件不再准确:英特尔对CPU动了手脚


http://www.sina.com.cn 2005年03月04日 10:48 PCPOP-电脑时尚

  据x86-secret消息,他们发现了Intel对处理器的内部结构进行了秘密的改造,导致测试软件显示错误信息。要理解这条消息,必须具备一些基础知识,首先是了解CPU的内部时钟记数器的概念,或者被称为TSC。TSC首先在奔腾时代被引入Intel的处理器,其作用就是在一个固定的时间里计算CPU的时钟数。开机时TSC的记数器清零,然后每过一个时钟周期加一。它的数值可以被一个MSR读出,或者使用一条rdtsc的指令读出。在一秒钟时间里,一块200MHz的奔腾处理器在这个记数器里会增加200,000,000次,而P4 3.8GHz会增加38亿次。这个记数器使用一个64位的寄存器来存储,它的长度可以允许一块4GHz的处理器连续使用146年而不溢出。

  TSC有许多用途,首先,它被用于计算处理器的主频。读取主频的程序首先读取TSC的值,等待一个固定时间后再次读取TSC的值,从两者的差值中计算出处理器的真实主频。我们通过它可以实时的计算处理器主频,比如移动处理器中时钟是不停改变的,只有通过这样的方法才能实时显示主频。另外TSC可以被用来估计机器的性能,因为通过它可以知道执行一段代码这台机器到底用了多少时钟周期。许多测试软件使用这种方法计算FLOPS,共识是FLOPS=操作数/从TSC得到的时间。这段时间是通过系统主频和TSC得到的数值计算出来的。

  那么Intel如今采取了什么改变?简单来说,TSC可能不再和主频同步增加了。

  下面来看一点解释:从Prescott P4 REV F41开始,Intel使用了一种C1E机制来改变处理器的功耗。它可以在空闲的时候把处理器的倍频降低到14X,这样可以减少功耗和发热。而6XX系列的处理器引进了EIST机制,可以实时改变处理器的倍频和电压。这些改变导致了一些检测软件的显示错误。比如下面图中的情况。

测试软件不再准确:英特尔对CPU动了手脚
检测软件

  上图中使用了P4 630处理器,默认的BIOS,新装的系统。使用了三个软件:CPU-Z 1.26.3,Sandra 2005和CrystalCPUID 4.3.8.240。我们注意到所有软件都认出了主频3GHz,不过都把FSB错误的认为是215MHz,倍频是14X,真正的情况应该是15×200。这些软件的工作原理如下:

  • 从TSC计算出处理器的主频
  • 从MSR寄存器中读出倍频
  • 主频除以倍频就得到FSB了

  [1]  [2]  [3]  [下一页]



评论】【硬件论坛】【推荐】【 】【打印】【下载点点通】【关闭
 

 
新 闻 查 询
关键词



热 点 专 题
第77届奥斯卡盛典
驾驶员培训新大纲
世界新闻摄影比赛
英语四六级考试改革
骑士号帆船欧亚航海
CBA全明星赛阵容公布
上海地产面临泡沫破灭
京城在售楼盘分布图
刘晓庆文集:自白录

 
 



科技时代意见反馈留言板 电话:010-82628888-5828   欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2005 SINA Inc. All Rights Reserved

版权所有 新浪网