* [patch] i386 and x86_64 TSC set_cyc2ns_scale imprecision
@ 2005-09-12 17:27 Mathieu Desnoyers
0 siblings, 0 replies; only message in thread
From: Mathieu Desnoyers @ 2005-09-12 17:27 UTC (permalink / raw)
To: george, johnstul; +Cc: linux-kernel, michel.dagenais
[-- Attachment #1: Type: text/plain, Size: 785 bytes --]
Hi,
I just found out that some precision is unnecessarily lost in the
arch/i386/kernel/timers/timer_tsc.c:set_cyc2ns_scale function. It uses a
cpu_mhz parameter when it could use a cpu_khz. In the specific case of an Intel
P4 running at 3001.171 Mhz, the truncation to 3001 Mhz leads to an imprecision
of 19 microseconds per second : this is very sad for a timer with nearly
nanosecond accuracy.
The patch for 2.6.13.1 is attached. It patches the x86_64 architecture too.
Please look at the patch for further comments.
Mathieu Desnoyers
Master Student in Computer Engineering
École Polytechnique de Montréal
OpenPGP public key: http://krystal.dyndns.org:8080/key/compudj.gpg
Key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
[-- Attachment #2: set_cyc2ns_scale_cpu_khz_parameter.diff.gz --]
[-- Type: application/octet-stream, Size: 1202 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-09-12 17:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-12 17:27 [patch] i386 and x86_64 TSC set_cyc2ns_scale imprecision Mathieu Desnoyers
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox