Como explicado por John McCalpin no link , fiz o seguinte para obter a atual frequência de uncore:
sudo modprobe msr
sudo wrmsr 0x391 0x20000000
sudo wrmsr 0x394 0x400000
sudo rdmsr 0x395 -d;sleep 1;sudo rdmsr 0x395 -d
O primeiro comando carrega o módulo msr. Segundo comando defina o bit 29 em MSR_UNC_PERF_GLOBAL_CTRL
, o que ativa todos os contadores de diferenças. O terceiro comando configura o bit 22 em MSR_UNC_PERF_FIXED_CTRL
, o que habilita o contador de uncore fixo. A saída do último comando, me dá os pulsos de clock de um segundo.