[arch-general] IPC slowness

frederik at ofb.net frederik at ofb.net
Thu Mar 7 21:51:15 UTC 2019


Dear Arch,

I've noticed a 20x slowdown on a simple IPC task on a couple of
recently updated Arch systems. Here is a script to exhibit the
problem:

    #!/bin/bash
    SCREEN=/usr/bin/screen
    $SCREEN -dmS x
    time $SCREEN -S x -X setenv A B
    $SCREEN -S x -X quit

On my laptop, which is a slower Arch system, it takes about 0.4
seconds, with 0.2s for user and 0.2s for system. On a faster Arch
system, it's 0.11s, 0.03s user and 0.09s system. On a *really* slow
Arch system that hasn't been updated since August, it takes 0.015s
(0.01s user and 0.00s system). On a Raspbian system it is 0.014s, and
on a Debian-based virtual server it is 0.006s.

In summary, the recent Arch systems are about 20x slower than the
Debian systems for this command, but the August 2018 Arch laptop is
just as fast.

Any ideas what might be causing this? I tried to debug with 'strace -r
-p' and it looks like most of the time is getting spent in a 'select'
call.

     0.000171 geteuid()                 = 1000
     0.000075 getegid()                 = 1000
     0.000080 select(1024, [3 4 5 6], [], NULL, NULL) = 1 (in [3])
     0.399534 fcntl(3, F_SETFL, O_RDONLY) = 0
     0.000171 read(3, "\0gsm\4\0\0\0/dev/pts/33\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 12336) = 12336
     0.000169 close(3)                  = 0

Thanks,

Frederick


More information about the arch-general mailing list