[PATCH] djprobe: Low overhead probe method

Masami Hiramatsu hiramatu@sdl.hitachi.co.jp
Thu Jul 14 08:32:00 GMT 2005


Hi, William

William Cohen wrote:
 > Djprobes looks like a good idea to reduce the overhead of the probes.

Thank you!

 > Ariel Tamches thesis discusses kernelinst in great detail and is
 > available from:
 >
 > http://www.cs.wisc.edu/~tamches/
 >
 >
 > Looking though the djprobe performance evaluation report list 7 shows a
 > negative overhead for djprobes on Pentium M. Is there some improvement
 > in performance due to layout? That certainly seems odd.

No, it does not due to layout. On Pentium M, the performance of gettimeofday
is certainly improved by using djprobe. I agree that is odd.

I think that was caused by the cache miss. In other words, it just so
happened that the djprobe code inhibited some cache contentions.
I will try to change probe insertion address and measure overhead again.

 > Is the gtod benchmark that much slower on AMD64 and Pentium M than
 > Pentium4 (2232 and 2500 vs 230microseconds)?

Yes, it is. On Pentium M and AMD64, gettimeofday is so slow.
I guess it depends on the implementation of cache and branch prediction
of processor.

 > Could this be due to clock
 > scaling?

No, cpufreq is disabled. And, I did not use any clocks except system
clock which provided by gettimeofday.

pseudo-code of gtodbench is below:

gtodbench () {
	count = 0;
	start = gettimeofday();

	do {
		count ++;
		end = gettimeofday();
	} while (start + 10secs > end );

	result = (end - start) / count;
}

This is free from any hardware clocks.

Best Regards,

-- 
Masami HIRAMATSU
2nd Research Dept.
Hitachi, Ltd., Systems Development Laboratory
E-mail: hiramatu@sdl.hitachi.co.jp



More information about the Systemtap mailing list