Date: Mon, 04 Aug 2008 20:15:23 +0400 From: =?windows-1251?Q?=CC=E8=F5=E0=E8=EB_=CA=E8=EF=E0?= <msnkipa@mail.ru> To: Rui Paulo <rpaulo@fnop.net> Cc: freebsd-amd64@freebsd.org Subject: Re[2]: Intel Q6600 CPU initialization Message-ID: <E1KQ2iR-000BPu-00.msnkipa-mail-ru@f109.mail.ru> In-Reply-To: <86868B14-C769-44AB-8326-F1E58E511F34@fnop.net> References: <86868B14-C769-44AB-8326-F1E58E511F34@fnop.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> > 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.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1KQ2iR-000BPu-00.msnkipa-mail-ru>