Messages in this thread |  | | Date | Sat, 17 Feb 2007 13:09:58 +0100 (CET) | From | Tim Schmielau <> | Subject | Re: Measuring cpu time using getrusage |
| |
On Wed, 14 Feb 2007, Johann Schuster wrote:
> currently i'm trying to measure the cpu times for > numerical algorithms written in C using two calls of > getrusage() and then calculating the time difference. > > According to the man page of getrusage i looked at the > user time of my process. Surprisingly the measured user > times vary strongly depending on the system load of the > machine. > A heavy system load nearly doubles the measured time > for my routine.
Does your system have hyperthreading? (look at whether the siblings field in /proc/cpuinfo is greater than one) If yes, there is no way to accurately measure runtimes because the (single-threaded) performance of your CPU depends on the other tasks running. Just disable hyperthreading for these measurements.
Tim - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |