Bug#814776: libc6: Performance regression from 2.19
control: tag -1 + moreinfo
On 2016-02-15 12:56, Antti Salmela wrote:
> Package: libc6
> Severity: normal
>
> Dear Maintainer,
>
> something has changed in libc6 between jessie and stretch which has a lead
> to a performance regression. I noticed this first with ssh file transfers, but
> tested using same version of iperf3 and kernel 4.3.0-1-amd64 on both hosts.
> Both hosts are running as Xen guests on same otherwise completely idle
> hardware. Running under Xen is probably needed to reproduce, I can't reproduce
> regression on similar bare hardware.
What makes you think this is a libc6 issue? Could you please at least
try to do the same test with a jessie machine with only libc6 and
related packages updated to stretch.
> $ iperf3 -c stretch
[snip]
> #
> # Overhead Command Shared Object Symbol
> # ........ ....... ................. ..........................................
> #
> 34.78% iperf3 [kernel.kallsyms] [k] xen_hypercall_xen_version
The culprit seems to be the above line, which is not related to glibc?
> 13.04% iperf3 libc-2.21.so [.] random_r
> 4.35% iperf3 [kernel.kallsyms] [k] __pollwait
> 4.35% iperf3 [kernel.kallsyms] [k] copy_page_to_iter
> 4.35% iperf3 [kernel.kallsyms] [k] dnotify_flush
> 4.35% iperf3 [kernel.kallsyms] [k] fsnotify
> 4.35% iperf3 [kernel.kallsyms] [k] inet_twsk_alloc
> 4.35% iperf3 [kernel.kallsyms] [k] release_sock
> 4.35% iperf3 [kernel.kallsyms] [k] sys_read
> 4.35% iperf3 [kernel.kallsyms] [k] tcp_recvmsg
> 4.35% iperf3 [kernel.kallsyms] [k] xen_hypercall_mmu_update
> 4.35% iperf3 [kernel.kallsyms] [k] xennet_alloc_rx_buffers
> 4.35% iperf3 libc-2.21.so [.] random
> 4.35% iperf3 libc-2.21.so [.] read
[snip]
> $ iperf3 -c jessie
[snip]
> #
> # Overhead Command Shared Object Symbol
> # ........ ....... ................. .............................
> #
> 15.79% iperf3 libc-2.19.so [.] random
> 15.79% iperf3 libc-2.19.so [.] random_r
> 10.53% iperf3 [kernel.kallsyms] [k] unmap_single_vma
> 10.53% iperf3 [kernel.kallsyms] [k] xen_hypercall_mmu_update
> 10.53% iperf3 [kernel.kallsyms] [k] xen_hypercall_xen_version
On jessie it was using 3 times less CPU.
> 5.26% iperf3 [kernel.kallsyms] [k] copy_user_generic_string
> 5.26% iperf3 [kernel.kallsyms] [k] fsnotify
> 5.26% iperf3 [kernel.kallsyms] [k] get_pfnblock_flags_mask
> 5.26% iperf3 [kernel.kallsyms] [k] kmem_cache_free
> 5.26% iperf3 [kernel.kallsyms] [k] sys_read
> 5.26% iperf3 [kernel.kallsyms] [k] sys_select
> 5.26% iperf3 [kernel.kallsyms] [k] tcp_poll
--
Aurelien Jarno GPG: 4096R/1DDD8C9B
aurelien@aurel32.net http://www.aurel32.net
Reply to: