Re: CPU speed without rdtsc



Tim Roberts wrote:
Spoon <spamtrap@xxxxxxxxxx> wrote:

Tim Roberts wrote:

...with a multiprocessor HAL, QueryPerformanceCounter returns RDTSC
directly, so it has all of the same pitfalls. I hope Microsoft solves this
problem correctly; the early versions of NT synced the cycle counters at
boot time. Today, they can be millions of cycles apart, although the delta
is constant after power up.
How do they fix the clock skew?

The cycle counter is one of the "machine-specific registers", and can be
written using the WRMSR instruction.

This has been known since 1994 when I reverse engineered both the EMON counters and the way the TSC is simply a read-only mirror of one of those counters. See BYTE July 1994:

http://www.byte.com/art/9407/sec12/art3.htm

Terje

--
- <Terje.Mathisen@xxxxxxxxxxxxx>
"almost all programming can be viewed as an exercise in caching"

.



Relevant Pages

  • Re: CPU speed without rdtsc
    ... so it has all of the same pitfalls. ... I hope Microsoft solves this ... the early versions of NT synced the cycle counters at ... The cycle counter is one of the "machine-specific registers", ...
    (comp.lang.asm.x86)
  • Re: CPU speed without rdtsc
    ... Tim Roberts wrote: ... so it has all of the same pitfalls. ... I hope Microsoft solves this ... the early versions of NT synced the cycle counters at ...
    (comp.lang.asm.x86)
  • Re: Why no patch for the .wmf problem?
    ... I do not dispute that the normal release cycle is monthly. ... a releasable product was available sooner. ... select few at Microsoft. ... > Microsofts monthly patch update. ...
    (microsoft.public.security)
  • Re: Word 2007 not working like Word 2003
    ... I agree that this is definately a "skip one cycle" release. ... choose either the Excel workbook or the Excel graphic. ... it sparingly - why is that - surely Microsoft need to cater for the people ... This post is a suggestion for Microsoft, ...
    (microsoft.public.office.misc)
  • Re: Downsizing Verilog synthesization.
    ... the LSbits and cycle through the counters, adding and clearing the LSbits to a BlockRAM worth of counter values. ... To cycle through 255 32-bit counters, you'd need 8-bit counters for each signal and a read-add-write cycle for each entry in your list. ... So, rather than having 63 16-bit comparators, I used 6-bit comparators. ...
    (comp.arch.fpga)