On Friday, October 6, 2023 at 8:55:44 PM UTC, daniel S wrote:
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
turbo mode also disabled
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)