gettimeofday() cripples notsc system

From: Michael Hohnbaum (hohnbaum@us.ibm.com)
Date: Tue Nov 19 2002 - 20:06:25 EST


John,

Running a large application that issues many gettimeofday()
system calls on a kernel running with notsc, results in time
slowing way down. I've seen the system time advance only
three minutes over a 30 minute period. The following program,
executed twice demonstrates the problem. Three instances running
in parallel made a 16 processor machine completely unusable.

#include <sys/time.h>

main()
{
        struct timeval tv;
        struct timezone tz;
        while (1)
                if (gettimeofday(&tv, &tz))
                        return;
}

I've recreated on 2.5.30, 2.5.44, and 2.5.47. Running a system that
is using the tsc I've tried 100 instances of this test running in
parallel with no problems - other than the normal incorrect time due
to tsc skew. At least no time slowdowns or hangs. The system I'm
using is a 4 node NUMAQ (x86) box.

I assume there is a lock starvation problem happening here, correct?
Any chance of fixing this?

-- 

Michael Hohnbaum 503-578-5486 hohnbaum@us.ibm.com T/L 775-5486

- 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/



This archive was generated by hypermail 2b29 : Sat Nov 23 2002 - 22:00:30 EST