CPU简述气温与温度的区别和CPU核心简述气温与温度的区别什么区别

→ cpu温度和cpu核心温度为什么差那么多?
cpu温度和cpu核心温度为什么差那么多?
女 | 0个月
健康咨询描述:
患者性别:患者年龄:问题描述:
其他类似问题
医生回复区
微信扫描关注直接与我沟通已扫5665次
&&&&&&可能是别的原因&&&&&&
您可能关注的问题
用药指导/吃什么药好
本品用于湿热瘀滞所致的带下病。...
参考价格:¥28
本品用于跌打损伤,跖骨、趾骨骨折,瘀血肿痛,吐血...
参考价格:¥17.5
下载APP,免费快速问医生
赞赏:医生
医生,随时向其咨询
使用微信扫码支付1元查看: 2389|回复: 11
CPU核心温度一个高一个低
下载分3572 分
原创币0 点
下载300 次
上传381 次
金币3027 ¥
主题帖子积分
会员等级:
金牌维客, 积分 577, 距离下一级还需 123 积分
将E4300 CPU升级到E7500,EVEREST检测温度两个核心差别较大。鲁大师进行温度压力测试,温度升高后仍有10度左右差别。
QQ拼音截图未命名.jpg (105.18 KB, 下载次数: 29)
23:37 上传
这情况正常吗?34度太低了吧,现在室温在30度左右。
下载分2714 分
原创币0 点
下载578 次
金币7947 ¥
主题帖子积分
会员等级:
检测到的温度不是100%的准确。
下载分3572 分
原创币0 点
下载300 次
上传381 次
金币3027 ¥
主题帖子积分
会员等级:
金牌维客, 积分 577, 距离下一级还需 123 积分
检测到的温度不是100%的准确。
34度测量应该有问题,没见过这么低的CPU温度。待机时基本恒定不动,升温后温差缩小。
下载分277 分
原创币0 点
主题帖子积分
会员等级:
初学乍练, 积分 26, 距离下一级还需 4 积分
cpu 主板和软件有个不准的。
下载分1959 分
原创币0 点
下载107 次
金币5830 ¥
主题帖子积分
会员等级:
那是模拟温度 又差异是正常的
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
在检查一下看看
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
鲁大师看看上硅胶
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
风扇有灰没清吧{:4_132:}
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
给风扇上点机油也行
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
北桥显卡南桥都有风扇吗??、
下载分371 分
原创币0 点
金币148 ¥
主题帖子积分
会员等级:
见习维客, 积分 61, 距离下一级还需 9 积分
实地毕业勋章
迅维实地面授培训学员勋章
Powered by Discuz! X3.2 -ALicensed
& 2017 Comsenz Inc.读取CPU核心温度 - 北漂_IT_boy - 博客园
最近在搞一个读取CPU温度的驱动,网上翻了好多资料,可发现全是copy的,原稿也就两三篇,可经实践发现其中不乏错误与片面,让人着实走弯路,燃起了我要总结一番的欲望。
这个驱动搞了一个多星期,总算可以运行了,测试了几台Intel和AMD的机器也都测试通过,测试对比用的是CPUID HWMonitor和Core Temp。
Intel和AMD的CPU中都有温度传感器(DTS),每个核心都有一个,温度就是由此获取来的,多核cpu可以使用 SetProcessAffinityMask API 来指定执行的CPU。
首先是利用CPUID来区分是Intel型号还是AMD型号,利用汇编和函数都可实现,考虑到64位系统不支持嵌入汇编,所以还是直接利用API函数就行。
CPUID其实就是对eax执行cpuid指令,返回信息储存在eax,ebx,ecx,edx中,令eax=0,可将CPU厂商信息返回在ebx,ecx,edx中,
    int CPUInfo[4];
    __cpuid(CPUInfo,0);&
Intel信息字符串为GenuineIntel,AMD为AuthenticAMD,只判断前4个字符就可以,只需与CPUInfo[1](ebx)比较就可得出型号。
接下来说如何获取温度,先从简单的说起,Intel实现起来比较简单:
  先以eax=0 执行 cpuid 检测 eax 支持的最大命令数,如果小于6就肯定不支持DTS。然后以eax=6 执行 cpuid,& 然后测试 eax 第一位是否为1,如果为1表示CPU支持DTS。
  &读取DTS:以 ecx=0x1A2 执行 rdmsr 指令, 测试 eax 的第30位是否为 1, 如果为 1 表示温度计算的初始值为 85 度否则表示从100度开始计算,这个值称为 Tjunction.
   eax=__readmsr(0x01A2)
& & & 然后以 ecx=0x19c 执行 rdmsr 指令,& eax 的 16-23 位为表示当前DTS 值,当前温度要以下面公式计算.
&&&&&& 当前cpu温度 = Tjunction - DTS
&&&&&& 注意& signature 为 0x6f1, 0x6f0的 CPU DTS 值直接代表当前温度而不用Tjunction 相减. 而 signature 小于等于 0x6f4 的 Tjunction 一直为100。
AMD就比较恶心了,研究了挺长时间:
  AMD温度存储在NB寄存器中,这是一个热传感寄存器。AMD的CPU分为K8和K10,K8的温度存储在这个寄存器的23-14位,K10的在31-21位。
  要访问这个状态寄存器,需要对PCI进行读写。先介绍俩个PCI用到的寄存器,CF8h和CFChCF8h: 存放配置空间的地址(CONFIG-ADDRESS)CFCh: 保存配置空间的读写数据(CONFIG-DATA)这两个空间对应于PCI桥路的两个寄存器,当桥路看到CPU在局部总线对这两个 I/O空间进行双字操作时,就将该I/O操作转变为PCI总线的配置操作。
温度读取& & & & & & & & & & & & &&
如果是K8的话,可以忽略低俩位,读取23-16就可以了,当然也可以读23-14,然后\4或者&&2;如果是K10的话,那就读取31-21
如何判断K8,K10
__cpuid(CPUInfo,1); //cpuid执行1,取出eax
t=CPUInfo[0];
family=((t&&20)&0xFF) + ((t&&8)&0xF);
model=((t&&12)&0xF0) + ((t&&4)&0xF);
stepping=t&0xF;
如果Family ==0xf 而除了&&&&&&&&&&&&&& (((model == 4) && (stepping == 0)) ||&&&&&&&&&&&&&&&&&&& ((model == 5) && (stepping &= 1)))则为K8如果Family & 0xf,一般是G。那就是K10
温度的计算公式K8 Temp = Value - 49'.&& 49这个值需要修正的:if (model &= 0x69 && model != 0xc1 && model != 0x6c && model != 0x7c) &temp=Value-49+21;K10 Temp = Value / 8'.
IO访问PCI总线设备配置空间配置空间地址寄存器的格式:31&&&&& 24 23&&&&&&&& 16 15&&&&&&&&&&& 11 10&&&&&&&&&&&&& 8 7&&&&&&&&&&&&&& 2 1&& 0| reserve | bus number | device number | function number | register number | 0 | 1/0 |
所以知道 bus number, device number, function number, register number后,可以这么来构造配置空间地址寄存器IOADDR = 0x+bus*0x10000 +(device*8)*0x100 + uFunction&0x07 + register number&~3;为什么需要0x呢,因为当CPU发出对I/O空间CFCh的操作时,PCI桥路将检查配置空间地址寄存器CF8h的31位。如果为1,就在PCI总线上产生一个相应的配置空
间读或写操作,0x就是使配置空间地址寄存器为1。经过上面的讨论后,可以写成#define DeviceSlot(uDevice, uFunction) ((((uDevice)&0x1f)&&3)|((uFunction)&0x07))#define GetDevice(uBus,uSlot,uAddress) (0xL |((uBus&0xff)&&16)|(uSlot&&8)|(uAddress&~3));
这样知道 uBus, uDevice, uFunction, uAddress后就可以通过IO指令来读写了。
对于K8, uAddress为0xE4,对于K10 uAddress为0xA4
怎样获取uBus, uDevice, uFunction从上面知道GetDevice需要 uBus, uDevice, uFunction的。可以扫描PCI总线来获取,对于AMD K8来说,设备ID为0x1103,对于K10来说,设备ID为0x1203。 二者的uFunction都为3.通过扫描PCI总线,匹配设备ID来获取。
BOOL get_bus_dev( int devieid,int *BUS, int *DEV ) //遍历PCI得到bus和dev{
ULONG ULONG ULONG func=3;
//K8 K10 fun为3 unsigned long S PCI_COMMON_CONFIG PciC PCI_SLOT_NUMBER SlotN
for(bus = 0; bus &= 255; ++bus)
for(dev = 0; dev &= 31; ++dev)
SlotNumber.u.AsULONG = 0;
SlotNumber.u.bits.DeviceNumber =
SlotNumber.u.bits.FunctionNumber =
RtlZeroMemory(&PciConfig, sizeof(PCI_COMMON_CONFIG));
Size = HalGetBusData(PCIConfiguration,
SlotNumber.u.AsULONG,
&PciConfig,
PCI_COMMON_HDR_LENGTH); //API函数
if (Size==PCI_COMMON_HDR_LENGTH)
if ( devieid==PciConfig.DeviceID )
DbgPrint("BUS:%d \n",bus);
DbgPrint("DEV:%d \n",dev);
return TRUE;
return FALSE;}
然后进行IO读写就可以获取温度了,K8:
static once =1;
int bus,dev,
if ( !get_bus_dev(0x1103,&bus,&dev) )
DbgPrint("获取BUS、DEV失败! \n");
slot=DeviceSlot(dev,0x3); &//上面定义的宏
IO_ADDRE=GetDevice(bus,slot,0xE4);&&//上面定义的宏
_outpd(0xCF8,IO_ADDRE);//端口读写
CPUTemp=_inpd(0xCFC);//端口读写
CPUTemp=(CPUTemp&&16)&0xFF;
CPUTemp=CPUTemp - g_O//g_Offset为49-21
DbgPrint("CPUTemp: %d \n",CPUTemp);天极传媒:天极网全国分站
您现在的位置:
& >&谈CPU核心数量多少与散热的关系
核心越多发热越大? 四核与六核CPU发热量PK天极网硬件频道 06:00
  随着CPU核心数的增加,双核已经退出主流市场,也宣告了多核心时代的来临。在中高端装机市场中,四核已经逐渐无法满足需求,六核甚至八核处理器开始进入了DIY玩家的装机单。由于核心数的增加,系统功耗自然随之提升,但是是否就能够说购买六核就必须搭配高端散热?对于升级用户来说,难道升级多核CPU就必须更换自己原来的?
六核处理器是否比四核处理器发热更大
  系统散热试验,六核与四核温度PK:
  在同样的散热器前提下,笔者选用了酷睿i7 3960X与酷睿i7 3820两款处理器进行对比。由于两者都采用了SNB-E架构,主要区别则就是一个采用六核心设计而另一个采用四核。在相差两个核心的前提下,他们的温度差距是否明显?
  首先我们来看一下两款处理器的空载温度:
  酷睿i7 3960X的空载温度仅为33度,功耗也比较低,证明了其实际只有两个核心在运行中,其余核心都在深度睡眠。而酷睿i7 3820的CPU温度在空载时也达到了34度,在温度方面也做得非常不错。
& 酷睿i7 3960X/酷睿i7 3820空载温度
  不难发现,虽然酷睿i7 3960X拥有六个物理核心,但是它的空载温度并不高,甚至要比四核心的酷睿i7 3820还要低一度。由此可以证明,在系统空载时,六核心处理器并没有因为核心数的增加而提高发热量。
  接下来看一下两款处理器的满载温度:
  通过SP 2004软件将处理器核心与各个线程进行满载试验,通过半个小时左右的数据满载计算,CPU将达到了发热量的稳定高峰值。如果说空载试验主要针对日常使用,满载试验则代表了游戏以及大量数据计算环境。
& 酷睿i7 3960X/酷睿i7 3820满载温度
  通过满载试验,酷睿i7 3960X的温度为49度,竟然没有超过50度,这让笔者感到十分意外。而四核心的酷睿i7 3820处理器的满载温度却达到了64度,竟然比六核心处理器还要高14度。
  虽然酷睿i7 3960X拥有更多的CPU核心,但是其空载以及满载温度控制表现同样十分优秀。在空载环境下,四核心处理器与六核CPU的发热量并没有明显区别,甚至可以说是完全相同。而在系统满载时,竟然四核心处理器要比六核发热量还要高!
  由此可以证明,CPU核心数量与发热并没有直接的联系,甚至多核心处理器要比传统四核还要有更好的温度控制性能。而且在用户眼中,由于两者的最高满载温度都没有超过70度,所以14度的温度差距并不能驱使DIY玩家去更换CPU。
(作者:深水之下责任编辑:李炎)
天极新媒体&最酷科技资讯扫码赢大奖
* 网友发言均非本站立场,本站不在评论栏推荐任何网店、经销商,谨防上当受骗!
适用类型:台式机
CPU主频:3.3GHz
接口类型:LGA 2011
核心代号:Sandy Bridge-EP
核心数:六核心
线程数:十二线程
制造工艺:32纳米
三级缓存:15MB
热设计功耗:130W
软件数码办公IT新闻122度过热关机!主流双核无风扇残忍评测第四部
出处:pconline&
作者:G.T.Y&
责任编辑:liyan&
二、清理误区,散热片温度不等于CPU核心温度  有鉴于无风扇散热产生高温对Athlon X2 BE-2350的影响,本次测试我们全程关闭CPU的Cool n Quiet功能。另外,在前两次的对比评测中,不少网友对CPU温度方面还有些误区,在测试开始之前,笔者有必要为大家释疑释疑。  部分网友认为,CPU散热片的表面温度就等于CPU的核心温度,其实是不正确的。因为热量从CPU核心发出,经过铜镍合金的顶盖,再传递到CPU散热片上,即便是导热系数再好的CPU散热器,也很难保证CPU核心等于CPU散热片温度。倘若两者温度一致,热量也就无法传递了。值得一提的是,一旦其中一个核心运行SP 2004出错,那么CPU核心温度会在短短几秒内大幅度下降。  上图是散热风扇停转后,系统待机30分钟后的CPU表面和核心温度的表现。于是在系统运行的状态下,我们立即打开机箱侧板,用红外线测温仪探测CPU散热器的温度,待温度探测完毕后又马上盖上侧板。   如上述,此时CPU散热器的上表面温度为49摄氏度,底座为51摄氏度。CPU内部提供的核心温度反而要稍低于探测出来的温度。好了,下面让我们开启双SP 2004来看看65nm的Athlon64 4000+ X2到底会有怎样的表现,是完美通过还是蓝屏收场呢?下一页马上为大家揭晓。
键盘也能翻页,试试“← →”键
网友评分:4.1
136.62元(凑单后含税约?158.91)
.76元含税直邮¥4237.8
279+35.58元含税包邮约¥315
4999元包邮
568元包税包邮(用券)
1949元含税包邮
DIY硬件频道本周热门文章
浏览本产品的网友还关注:}

我要回帖

更多关于 气温和温度的区别 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信