Jump to content
Калькуляторы

Повышенный read_hpet, отключение tsc read_hpet, tsc

Имеется в наличии сервер с материнской платой Gigabyte X99-UD3-CF и процессором Intel® Core i7-5820K CPU @ 3.30GHz.

 

Сетевые адаптеры: 82599 10 Gigabit Dual Port Network Connection - наружу, двухпортовая 82576 Gigabit Network Connection в бондинге - внутрь.

 

# lspci
03:00.0 Ethernet controller: Intel Corporation 82599 10 Gigabit Dual Port Network Connection (rev 01)
03:00.1 Ethernet controller: Intel Corporation 82599 10 Gigabit Dual Port Network Connection (rev 01)
04:00.0 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)
04:00.1 Ethernet controller: Intel Corporation 82576 Gigabit Network Connection (rev 01)

 

ОС: CentOS 6.6. Ядро из ELRepo: 3.10.82-1.el6.elrepo.x86_64.

 

Основная задача: раздача канала Интернет в локальную сеть. Текущая загрузка канала около 0,9-1 Гбит.

 

Строка загрузки:

kernel /vmlinuz-3.10.82-1.el6.elrepo.x86_64 ro root=UUID=cf3f5006-9a57-4c46-8cbd-1b5d0b63cf5c LANG=ru_RU.UTF-8 rd_NO_LUKS rd_MD_UUID=6bbd30d8:cd1327d3:ef8a5f0e:4d4853f8 rd_MD_UUID=87b79310:10324238:687ab647:896d9326 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=ru rd_NO_LVM rd_NO_DM rhgb iommu=off intel_iommu=off intel_idle.max_cstate=0 processor.max_cstate=1 idle=poll quiet

 

Драйвера последние с сайта Intel. Выжимка из /var/log/messages:

Intel(R) Gigabit Ethernet Network Driver - version 5.3.2
Copyright (c) 2007-2015 Intel Corporation.
igb: 0000:04:00.0: igb_validate_option: RSS - RSS multiqueue receive count set to 2
igb: 0000:04:00.0: igb_validate_option: QueuePairs - Tx/Rx queue pairs for interrupt handling Enabled
igb 0000:04:00.0: added PHC on eth1
igb 0000:04:00.0: Intel(R) Gigabit Ethernet Network Connection
igb 0000:04:00.0: eth1: (PCIe:2.5GT/s:Width x4)
igb 0000:04:00.0 eth1: MAC: 00:1b:21:36:5c:82
igb 0000:04:00.0: eth1: PBA No: E43709-003
igb 0000:04:00.0: LRO is disabled
igb 0000:04:00.0: Using MSI-X interrupts. 2 rx queue(s), 2 tx queue(s)
igb: 0000:04:00.1: igb_validate_option: RSS - RSS multiqueue receive count set to 2
igb: 0000:04:00.1: igb_validate_option: QueuePairs - Tx/Rx queue pairs for interrupt handling Enabled
igb 0000:04:00.1: added PHC on eth1
igb 0000:04:00.1: Intel(R) Gigabit Ethernet Network Connection
igb 0000:04:00.1: eth1: (PCIe:2.5GT/s:Width x4)
igb 0000:04:00.1 eth1: MAC: 00:1b:21:36:5c:83
igb 0000:04:00.1: eth1: PBA No: E43709-003
igb 0000:04:00.1: LRO is disabled
igb 0000:04:00.1: Using MSI-X interrupts. 2 rx queue(s), 2 tx queue(s)
Intel(R) 10 Gigabit PCI Express Network Driver - version 4.1.2
Copyright (c) 1999-2015 Intel Corporation.
ixgbe: Receive-Side Scaling (RSS) set to 2
ixgbe: 0000:03:00.0: ixgbe_check_options: FCoE Offload feature enabled
ixgbe: allow_unsupported_sfp Enabled
ixgbe 0000:03:00.0 (unregistered net_device): WARNING: Intel (R) Network Connections are quality tested using Intel (R) Ethernet Optics. Using untested modules is not supported and may cause unstable operation
ixgbe 0000:03:00.0: PCI Express bandwidth of 32GT/s available
ixgbe 0000:03:00.0: (Speed:5.0GT/s, Width: x8, Encoding Loss:20%)
ixgbe 0000:03:00.0 eth1: MAC: 2, PHY: 17, SFP+: 5, PBA No: E66560-003
ixgbe 0000:03:00.0: 00:1b:21:90:fe:f8
ixgbe 0000:03:00.0 eth1: Enabled Features: RxQ: 2 TxQ: 2 FdirHash
ixgbe 0000:03:00.0 eth1: Intel(R) 10 Gigabit Network Connection
ixgbe: Receive-Side Scaling (RSS) set to 2
ixgbe: 0000:03:00.1: ixgbe_check_options: FCoE Offload feature enabled
ixgbe: allow_unsupported_sfp Enabled
ixgbe 0000:03:00.1: PCI Express bandwidth of 32GT/s available
ixgbe 0000:03:00.1: (Speed:5.0GT/s, Width: x8, Encoding Loss:20%)
ixgbe 0000:03:00.1 eth4: MAC: 2, PHY: 1, PBA No: E66560-003
ixgbe 0000:03:00.1: 00:1b:21:90:fe:f9
ixgbe 0000:03:00.1 eth4: Enabled Features: RxQ: 2 TxQ: 2 FdirHash
ixgbe 0000:03:00.1 eth4: Intel(R) 10 Gigabit Network Connection

 


 

При работе наблюдаем странность, а именно повышенную нагрузку read_hpet:

# perf top
 84,79%  [kernel]           [k] cpu_idle_loop
  7,16%  [kernel]           [k] read_hpet
  0,59%  [kernel]           [k] module_get_kallsym
  0,39%  [kernel]           [k] _raw_spin_lock
  0,34%  [kernel]           [k] kallsyms_expand_symbol.clone.0
  0,33%  [kernel]           [k] u32_classify
  0,20%  [kernel]           [k] format_decode
  0,17%  [kernel]           [k] add_interrupt_randomness
  0,15%  perf               [.] symbols__insert
  0,13%  [kernel]           [k] strnlen
  0,11%  [kernel]           [k] vsnprintf

 

В настоящий момент clocksource выбран HPET:

/sys/devices/system/clocksource/clocksource0/current_clocksource
hpet

 

После изучения форума сложилось впечатление, что должно помочь изменение clocksource с hpet на tsc, но tsc нет в списке доступных источников:

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

 

TSC по какой-то причине отключается на этапе загрузки:

tsc: Fast TSC calibration using PIT
tsc: Detected 3300.005 MHz processor
Calibrating delay loop (skipped), value calculated using timer frequency.. 6600.01 BogoMIPS (lpj=3300005)
smpboot: CPU0: Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz (fam: 06, model: 3f, stepping: 02)
TSC deadline timer enabled
Performance Events: no PEBS fmt2+, generic architected perfmon, Intel PMU driver.
... version:                3
... bit width:              48
... generic registers:      8
... value mask:             0000ffffffffffff
... max period:             000000007fffffff
... fixed-purpose events:   3
... event mask:             00000007000000ff
smpboot: Booting Node   0, Processors  #1
TSC synchronization [CPU#0 -> CPU#1]:
Measured 193093878915547 cycles TSC warp between CPUs, turning off TSC clock.
tsc: Marking TSC unstable due to check_tsc_sync_source failed

 

С чем может быть связано отключение TSC? Это программная или аппаратная проблема? Можно ли как-то принудительно включить TSC на этапе загрузки? Ни на одном из доступных компьютеров подобной проблемы не наблюдается, поиск в Google ни к чему не привёл.

 

Какие ещё варианты можно попробовать? Может ли помочь обновление BIOS, обновление ядра?

Share this post


Link to post
Share on other sites

Промахнулся с разделом, прошу модераторов удалить тему.

Share this post


Link to post
Share on other sites

BIOS обновить попробуйте. TSC отключается т.к. разбежность в показаниях по разным ядрам.

Share this post


Link to post
Share on other sites

В строку загрузки добавьте tsc=reliable и будет счастье

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this