Quantcast
Channel: VMware Communities : Discussion List - Virtual Machine, Guest OS and VM Tools
Viewing all articles
Browse latest Browse all 1961

Continuous readin of TSC

$
0
0

Hi,

i've created my own bootloader and running it from a floppy image in a VM. The code repeatedly reads the TSC value and print it if the difference is larger than 100000 (about 0.05[ms] on my setup).

 

About 8 times a second i see a jump in the tsc, with delays up to 2[ms].

Any idea what the source of this is?

 

(TSC is running at 2GHz, and i've added the monitor_control.virtual_rdtsc = FALSE setting.

 

Main loop of the code i used:

 

  while (i < 100000)

  {

    x = __rdtsc();

    y = __rdtsc();

    x1 = x & 0xffffffff;

    x2 = (x >> 32) & 0xffffffff;

 

    if (((y - x) > 100000))

    {

      printf("TSC jump: %d %08x:%08x %d\n", i, x2, x1, y - x);

      i++;

    }

  }

 

Output:

TSC jump: 459 0011c215:dccfe2f6 4494498

TSC jump: 460 0011c216:1dc73574 1367202

TSC jump: 461 0011c216:1f293756 1606266

TSC jump: 462 0011c216:23bd161a 1438158

TSC jump: 463 0011c216:5f57e018 3988266


Viewing all articles
Browse latest Browse all 1961

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>