Intel Q6600 CPU initialization
Михаил Кипа
msnkipa at mail.ru
Mon Aug 4 16:15:26 UTC 2008
>
> On 3 Aug 2008, at 14:06, Михаил Кипа wrote:
>
> > I have got Intel Q6600 and use it under FreeBSD 7STABLE (RELENG7).
> > My cpu works with same
> > overclocking (instead of standart 266x9 (FSBxMultiplyer) i use
> > 425x8). When I boot my system I
> > have these messages on the screen (and in dmesg)
> >
> > Timecounter "i8254" frequency 1193182 Hz quality 0
> > CPU: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz (3825.23-MHz K8-
> > class CPU)
> > Origin = "GenuineIntel" Id = 0x6fb Stepping = 11
> >
> > But it really works ONLY on 3400MHz! not 3825.23-MHz!
> > Can somebody explain me where this value calculates?
>
> This value is calculated with the help of the RDTSC instruction.
> See section 10 of http://www.intel.com/assets/pdf/appnote/241618.pdf
> for a detailed description.
>
> Regards,
> --
> Rui Paulo
>
OK I have found the place of that calculation in tsc.c. Calculation of the actual frequency of CPU by
the use of RDTSC instruction on Intel Core 2 microarchitecture is incorrect! Processor increments TSC
at a constant rate. That rate defined by MAXIMUM core-clock to bus-clock rate (CPU myltiplier), so if
myltiplier is not set to it`s maximum value speed will be incorrect. For example on Intel QX9650 that
operates as 400*9 (actual 3.6GHz) system calculate that CPU frequency is 5.6GHz (maximum myltiplier is
14).
Is it critical that tsc_freq variable have wrong value? How is it affect to the system?
Regards,
Mihail.
More information about the freebsd-amd64
mailing list