​Perhaps the mail didn't arrive properly, but the fq performance is okay now. I don't know why it was completely out for a couple of tests. It was most likely my mistake or some very bad timing for testing. I see that on my physical hosts tsc is also the default with hpet in the list of available clocksources, just as in the VM (where kvm-clock is a paravirtualized version of the host tsc) so the same behaviour is probably to be expected in the VM as on the physical hosts. As far as I know I have not seen that it is a requirement to actually run: echo hpet > /sys/devices/system/clocksource/clocksource0/current_clocksource ... before using fq as most (physical) linux hosts use tsc as the default clock source today unless the kernel detects unreliabilities. ​ On 25 January 2017 at 22:48, Eric Dumazet wrote: > I do not know any particular issues with FQ in VM > > If you have a recent tc binary (iproute2 package) you can get some > infos, as mentioned in this commit changelog : > > https://git.kernel.org/cgit/linux/kernel/git/torvalds/ > linux.git/commit/?id=fefa569a9d4bc4b7758c0fddd75bb0382c95da77 > > > $ tc -s qd sh dev eth0 | grep latency > 0 gc, 0 highprio, 32490767 throttled, 2382 ns latency > > > On Wed, 2017-01-25 at 22:31 +0100, Hans-Kristian Bakke wrote: > > kvm-clock is a paravirtualized clock that seems to use the CPUs TSC > > capabilities if they exist. But it may not be perfect: > > > > > > https://access.redhat.com/documentation/en-US/Red_Hat_ > Enterprise_Linux/6/html/Virtualization_Host_Configuration_and_Guest_ > Installation_Guide/chap-Virtualization_Host_Configuration_and_Guest_ > Installation_Guide-KVM_guest_timing_management.html > > > > > > On 25 January 2017 at 22:29, Hans-Kristian Bakke > > wrote: > > Actually I think that is because it may be using the newer > > TSC: > > dmesg | grep clocksource > > [ 0.000000] clocksource: kvm-clock: mask: > > 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns: > > 881590591483 ns > > [ 0.000000] clocksource: refined-jiffies: mask: 0xffffffff > > max_cycles: 0xffffffff, max_idle_ns: 7645519600211568 ns > > [ 0.000000] clocksource: hpet: mask: 0xffffffff max_cycles: > > 0xffffffff, max_idle_ns: 19112604467 ns > > [ 0.092665] clocksource: jiffies: mask: 0xffffffff > > max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns > > [ 0.366429] clocksource: Switched to clocksource kvm-clock > > [ 0.378974] clocksource: acpi_pm: mask: 0xffffff > > max_cycles: 0xffffff, max_idle_ns: 2085701024 ns > > [ 1.666474] tsc: Refined TSC clocksource calibration: > > 3200.013 MHz > > [ 1.666479] clocksource: tsc: mask: 0xffffffffffffffff > > max_cycles: 0x2e20562a1bb, max_idle_ns: 440795285529 ns > > > > > > > > On 25 January 2017 at 22:26, Jonathan Morton > > wrote: > > > > > On 25 Jan, 2017, at 23:20, Hans-Kristian Bakke > > wrote: > > > > > > ​[ 0.000000] ACPI: HPET 0x00000000BFFE274F 000038 > > (v01 BOCHS BXPCHPET 00000001 BXPC 00000001) > > > [ 0.000000] ACPI: HPET id: 0x8086a201 base: > > 0xfed00000 > > > [ 0.000000] clocksource: hpet: mask: 0xffffffff > > max_cycles: 0xffffffff, max_idle_ns: 19112604467 ns > > > [ 0.000000] hpet clockevent registered > > > [ 0.362335] hpet0: at MMIO 0xfed00000, IRQs 2, 8, > > 0 > > > [ 0.362339] hpet0: 3 comparators, 64-bit > > 100.000000 MHz counter > > > [ 0.661731] rtc_cmos 00:00: alarms up to one day, > > y3k, 114 bytes nvram, hpet irqs > > > > Conspicuously absent here is a line saying > > “clocksource: Switched to clocksource hpet”. That may > > be worth examining in more detail. > > > > - Jonathan Morton > > > > > > > > > > > > _______________________________________________ > > Bloat mailing list > > Bloat@lists.bufferbloat.net > > https://lists.bufferbloat.net/listinfo/bloat > > >