TSC отсутствует в доступных источниках часов

Не уверен почему TSC как источник синхронизации недоступен?

cat /sys/devices/system/clocksource/clocksource0/available_clocksource 
hpet acpi_pm

Процессор, который я использую, Intel Xeon(R) X5570 @ 2.93GHz, Материнская плата Supermicro X8DTU-F, Бег CentOS 6.3 2.6.32-279.22.1.el6.x86_64,

Не доволен производительностью hpet или же acpi_pm измеряется с помощью следующей программы.

#include <time.h>
main()
{
    int rc;
    long i;
    struct timespec ts;

    for(i=0; i<10000000; i++) {
        rc = clock_gettime(CLOCK_MONOTONIC, &ts);
    }
}

С hpet как источник часов

time ./clock_timing
real    6m25.761s
user    6m23.456s
sys     0m0.403s

С acpi_pm как источник часов

time ./clock_timing
real    10m12.057s
user    0m6.615s
sys     10m2.549s

Обновить

cat /proc/cmdline

ро корень =UUID=72903706-30bf-4285-9016-d24cf2066d3c rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=132M@0M KEYBOARDTYPE= рс KEYTABLE= нам rd_NO_DM =788 VGA consoleblank=0 clocksource_failover=acpi_pm

grep flags /proc/cpuinfo

флаги: fpu vme de pse tsc MSR PaE MCE CX8 Apic Mtrr PGE MCA CMOV PAT PSE36 ClFlush DTS Acpi ммх FXSR SSE SSS2 SSH HT TM Pbe системного вызова NX RDTSCP LM constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm ida dts tpr_shadow vnpt flex

1 ответ

Решение

Некоторые процессоры Intel до Westmere имеют несколько некорректную возможность TSC, возможно, это ваш случай, и ядро ​​занесло в черный список TSC как источник таймера. Выполните следующую команду

dmesg | grep -i tsc

и сообщить здесь результат.

Другие вопросы по тегам