TSC unstable on Intel Pentium M processor 750

From: Mao Yilu
Date: Sun Apr 26 2009 - 10:59:35 EST


Hi,

I masked all the interrupts except keyboard interrupt before the instruction âhltâ, So the CPU ran nothing until I click the keyboard button. And I used ârdtscllâ and âdo_gettimeofdayâ to get the halt time. But the result of âdo_gettimeofdayâ was longer than the one of ârdtscllâ about 3s per minute. I donât know why.
I timed some math job using the same way in contrary to the âhltâ instruction. The TSC was not correct either. In 3 minutes, the result of âdo_gettimeofdayâ was longer than the one of ârdtscllâ about 5s.
The processor is Intel Pentium M processor 750. From the software developerâs manual of Intel, the processor clock of Pentium M processors is impacted by Intel SpeedStep technology, while some other processors is not. Maybe this is another feature Pentium M processors own.
Pentium M processors support 5 C-states. I am sure the TSC doesnât stop in C0 and C1 states. But I am not sure about other states. Maybe other states will stop the clock, and âhltâ instruction will make the CPU into deeper state.
These are my guess. I wanna the truth. Thank you.

Mao Yilu

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/