关于RDTSC和CPU调频
来源:互联网 发布:淘宝网店商标 编辑:程序博客网 时间:2024/05/16 07:37
RDTSC不过是个特定CPU支持的指令,这个指令将计算机启动以来的CPU运行周期数放到EDX:EAX寄存器中,EDX是高位,EAX是低位。如下
//CPU时间戳,用来获取机器周期数。
unsigned __int64 GetCycleCount()
{
unsigned __int64 iCounter;
asm rdtsc
asm mov DWORD PTR iCounter, EAX
asm mov DWORD PTR (iCounter+4), EDX
return iCounter;
}
RDTSC指令在X86平台常用来计时、计算CPU频率,测试程序运行效率。除了INTEL的VTUNE软件,RDTSC是程序优化过程中的有力工具。
但随着CPU的多核、超线程技术,特别是CPU调频技术,RDTSC不再可靠。TSC是以最大频率进行累计,所以发生降频后,通过RTDSC指令来获取TSC的数据,就会增加。
CPU调频
对节能有重要的意义,特别是移动PC。目前多数Linux发行版都已经默认启用了这个功能,但是Debian 4.0和Archlinux还没有,需要经过简单的设置才行。
通过cat /proc/cpuinfo可以观察到CPU频率的变化。
在centos中是通过cpuspeed来实现变频的。可以在centos的运行级系统服务中找到它
# chkconfig --list | grep cpu
cpuspeed 0:?
介绍给大家几篇精典文章
http://changelog.complete.org/posts/572-Saving-Power-with-CPU-Frequency-Scaling.html
http://www.thinkwiki.org/wiki/How_to_make_use_of_Dynamic_Frequency_Scaling
http://wiki.archlinux.org/index.php/SpeedStep
- 关于RDTSC和CPU调频
- cpu 调频
- QueryPerformanceFrequency,RDTSC,CPU频率
- QueryPerformanceFrequency,RDTSC,CPU频率
- QueryPerformanceFrequency,RDTSC,CPU频率
- linux CPU动态调频
- linux CPU动态调频
- linux CPU动态调频
- Android CPU 调频策略
- cpu 调频 温度 ondemand
- Linux kernel-CPU 调频
- linux cpu调频
- CPU interactive调频策略
- rdtsc 指令测试 cpu 频率
- rdtsc
- RDTSC
- Linux内核分析之CPU动态调频
- 如何禁用CPU的动态调频功能
- opencv宏
- 记载ubantu的安装过程
- 上传网站到Dreamhost空间
- mysql 导出文本
- c++ primer 习题10.18
- 关于RDTSC和CPU调频
- 今天很想哭
- 服务使用CXF框架客户端使用Axis2框架的webservice实现方案
- 一篇介绍JMF的文章
- ubuntu下在eclipse中开发opengl应用程序
- 设置背景图片
- C# checked、unchecked操作符
- web.xml的结构
- ASP.NET防SQL注入脚本程序 v2.0