Robert Dickel wrote:
> Bart: How would I test the TSC issue. I've gotten the 
> driver to the point where Caspers powernowadm and 
> powernowd work with it (its nice to see the stepping 
> up and down!).


You can either dig out the intel specs for the processor
in question or you can see if gethrtime() slows down
in comparison to a fixed time base (say your wristwatch).

Code something like:

#include <time.h>
main()
{
        long long start = gethrtime();  
        for(;;) {
                sleep(1);
                printf("%10.6lf seconds since start\n",
                    (double)(gethrtime() - start)/1.e9);
        }
}

This should wake up once a second and print the time...
if this still works correctly (doesn't lose time, etc)
at lower power settings you should be fine.

If you're on a multi-processor, arbitrarily odd things
may happen if one cpu starts time-traveling without the
other one - desktop (X) hangs, absurd stats, etc; Solaris
internal systems assume time is always increasing.

- Bart

-- 
Bart Smaalders                  Solaris Kernel Performance
barts at cyber.eng.sun.com              http://blogs.sun.com/barts

Reply via email to