Date: Fri, 23 Aug 2002 14:35:35 -0700 (PDT) From: John Polstra <jdp@polstra.com> To: current@freebsd.org Cc: phk@critter.freebsd.dk Subject: Re: how to compute the skew between TSC in SMP systems ? Message-ID: <200208232135.g7NLZZqx088123@vashon.polstra.com> In-Reply-To: <30293.1030137693@critter.freebsd.dk> References: <30293.1030137693@critter.freebsd.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
In article <30293.1030137693@critter.freebsd.dk>, Poul-Henning Kamp <phk@critter.freebsd.dk> wrote: > In message <200208232114.g7NLE80E087984@vashon.polstra.com>, John Polstra write > s: > >Well ... you can come pretty close. The BSD/OS kernel has code > >(conditioned on option SMP_DEBUG) that manages to sync up all TSCs in > >an N-CPU system such that the measured difference between the extremes > >is less than 100 counts. > > Was this before or after APM, ACPI, SpeedStep and all the other > crap ruined the TSC as a timecounting device ? Before, mostly. I've only tried it on various dual-CPU PIII systems, so I can't say whether it works on P4 with its clock-throttling thermal management or not. APM isn't configured into the kernel and is probably firmly disabled in the BIOS. Last I heard, BSD/OS had never heard of ACPI. Also, I have no evidence one way or the other as to whether the TSCs remain in sync over the long term. The code syncs them up once at boot time and then never touches them again. Still, the feature has come in handy when debugging certain multiprocessor situations where I really needed to know the relative ordering of events taking place on both CPUs. John -- John Polstra John D. Polstra & Co., Inc. Seattle, Washington USA "Disappointment is a good sign of basic intelligence." -- Chögyam Trungpa To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200208232135.g7NLZZqx088123>