Messages in this thread | | | Subject | Re: do_gettimeofday vs. rdtsc in the scheduler | From | john stultz <> | Date | 17 Sep 2002 16:32:15 -0700 |
| |
On Tue, 2002-09-17 at 16:12, David S. Miller wrote: > From: James Cleverdon <jamesclv@us.ibm.com> > Date: Tue, 17 Sep 2002 15:55:52 -0700 > > The initial sync was easy, even with variable latencies on cache lines. A > much simplified NTP-ish algorithm works fine. The painful thing was bus > clock drift and programs that foolishly relied on the TSC being the same > between CPUs and between nodes. > > This is why the gettimeofday implementation should use the system tick > thing and also any profiling support in the C library should avoid > TSC as well.
I think the point James is making is that on very large systems, you will get system tick skew as well. On one system I know of, the bus frequency is intensionally skewed slightly between nodes. This is what causes the TSCs to skew, and I believe would also cause this "system tick" to skew as well.
Additionally, where is this system tick thing? You make it sound like its a register in the cpu, and while the Ultra-III may have one, I'm unaware of a system/bus tick register on intel chips. Is it in some semi-documented MSR?
I apologize for being confused, I'm just not sure if your criticizing the code or the hardware.
thanks -john
- 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/
| |