when i overclock my bclk to 129mhz rdtsc not cycle correctly when reading the freq what cause it ??
turbo mode disabled c states disabled hyperthreading disabled speedshift disabled make sure its reading in first core KeSetAffinityThread();
i have i9 9900ks
base clock reading 4ghz
bclk clock reading 5.160ghz when overclock 129mhz
uint64_t tsc_hz = __readmsr(0xCE);
return ((tsc_hz >> 8) & 0xff) * 100 * 1E6; freq rdtsc reading consistent on 4ghz
uint64_t tsc_hz = __readmsr(0xCE);
return ((tsc_hz >> 8) & 0xff) * 129 * 1E6; freq rdtsc reading overflow on 129mhz
is there way to fix it ? i even try reading the freq directly with cpuid
inline unsigned __int64 get_tsc_freqX() {
static unsigned __int64 freq = 0;
if (freq == 0) {
int raw[4];
__cpuid(raw, 0x16); // get cpu freq
freq = static_cast<unsigned __int64>(raw[0]) * 1000000;
}
return freq;
}
but seems rdtsc still not cycle count correctly on bclk overclock 129mhz
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 344 |
Nodes: | 16 (2 / 14) |
Uptime: | 12:03:56 |
Calls: | 7,546 |
Calls today: | 2 |
Files: | 12,729 |
Messages: | 5,651,529 |