NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: misc/52184: Recent qemu performs badly on NetBSD hosts under load
The following reply was made to PR misc/52184; it has been noted by GNATS.
From: Andreas Gustafsson <gson%gson.org@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: misc/52184: Recent qemu performs badly on NetBSD hosts under load
Date: Mon, 16 Apr 2018 17:24:28 +0300
I believe the performance issues reported in this PR have now mostly
been resolved. There were multiple causes:
1. The increase in system time was because of QEMU bug 1481272, which
has now been fixed. See https://bugs.launchpad.net/qemu/+bug/1481272/
for details.
2. Much of the increase in user time appears to have been due to QEMU
2 running slowly when using a small translation buffer size. By
default, QEMU sizes the translation buffer based on the amount of RAM
configured for the VM, and i386 in particular was configured with a
small amount of RAM (32 MB), which caused a translation buffer of only
8 MB to be used. This was partly addressed some time ago by
increasing the RAM configured for the i386 tests, and performance
improved further when I recently added the qemu command line option
"-tb-size 128" to the configuration on babylon5.netbsd.org to increase
the size further.
The size of the translation buffer appears to have a much smaller
effect on performance in qemu 0.15, but I don't know why.
3. There was also an issue with qemu failing to detect the presence
of posix_memalign() on NetBSD, falling back to valloc() and wasting
memory by unnecessarily rounding allocations up to full pages. This
does not appear to have been a major cause of the performance issues,
but in any case, this too is now fixed.
4. The NetBSD tests themselves have grown substantially, and now
require several times more CPU time than they did a couple of years
ago.
Testing historic versions of NetBSD using a recent qemu with -m 128
-tb-size 128 shows it running the tests faster than qemu 0.15 did
(both running on the current babylon5.netbsd.org hardware):
NetBSD source date 2016.01.01.19.14.45, qemu-0.15 -m 32
18986.10 real 15865.06 user 604.28 sys
NetBSD source date 2016.01.01.19.46.48, qemu-2.11.1 -m 128 -tb-size 128
14637.12 real 9664.66 user 142.80 sys
--
Andreas Gustafsson, gson%gson.org@localhost
Home |
Main Index |
Thread Index |
Old Index