This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
Measuring system call times, elapsed and cpu
- From: Mike Mason <mmlnx at us dot ibm dot com>
- To: systemtap at sourceware dot org
- Date: Tue, 18 Sep 2007 15:24:41 -0700
- Subject: Measuring system call times, elapsed and cpu
I'm writing a script that attempts to measure how long it takes system calls to finish. It uses gettimeofday_ns() to get the time at entry and exit, then calculates the delta. Simple. It occurred me, however, that a system call can start on one cpu and finish on another. Now I'm wondering if I can rely on gettimeofday_ns() for this type of measurement. If not, is there a better way to do this?
I'd also like to break down the system call latency into cpu and wait times. I thought of calculating the delta of utime+stime from task_struct to get cpu time, then subtracting that from the overall delta to get wait time. Should this work or am I missing something?
Thanks,
Mike