linux 下计算程序运行时间 一句话说明

说明下:linux 2.4 一秒有100个时钟中断, 一个jiffies为10ms

            linux2.6 一秒1000个时钟中断,所以一个jiffies为1ms

 

每次时钟中断产生,内核内部计数器的值加一,也就是jiffies++。

jiffies,是一个64 位的变量。

调用需包含<linux/jiffies.h> 或 <linux/sched.h>

 

计算时间最简单方法

unsigned long t1,t2, diff;

t1 = jiffies;

.........

run the function

.........

t2 = jiffies;

 

diff = t2-t1;

 

// print 64 bit diff value.

printf("diff = %ld/n", diff);

 

更多方法,比如读tsc,APIC/ACPI timer/ 参见:

http://blog.csdn.net/defeattroy/archive/2010/02/04/5288627.aspx

你可能感兴趣的:(linux,2010)