[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Performance improvement with 58a2e3f5c37be02dac3086b81bdda9414b931ed
|
From: |
Lukáš Doktor |
|
Subject: |
Re: Performance improvement with 58a2e3f5c37be02dac3086b81bdda9414b931edf |
|
Date: |
Tue, 16 May 2023 15:36:46 +0200 |
|
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 |
Dne 16. 05. 23 v 15:19 Stefan Hajnoczi napsal(a):
> On Tue, 16 May 2023 at 08:56, Lukáš Doktor <ldoktor@redhat.com> wrote:
>>
>> Hello Stefan, folks,
>>
>> the perf-ci detected and bisected the 58a2e3f5c37 - block: compile out
>> assert_bdrv_graph_readable() by default - as a performance improvement
>> especially with 4K reads with multiple jobs (but minor improvements were
>> observed in other variants)
>>
>>
>> https://ldoktor.github.io/tmp/RedHat-virtlab722/v8.0.0/140-improvement.html
>
> Thanks, that's good to know. How much improvement was there? I don't
> understand how to read the report that you linked to.
>
Hello Stefan,
the linked report is a bisection report that shows how the throughput evolved
throughout the bisection. I only used a single test:
TunedLibvirt/fio-nvme-Aj-4i/0000:./read-4KiB/throughput/iops_sec.mean
to bisect and the commit shas are presented in 3-letter format in table header
(sorted by "git log" order). There should be full-sha on hover, but this is
currently broken and I haven't had time to fix that yet so one has to map these
using bisect log:
git bisect start
# good: [271477b59e723250f17a7e20f139262057921b6a] Merge tag
'compression-code-pull-request' of https://gitlab.com/juan.quintela/qemu into
staging
git bisect good 271477b59e723250f17a7e20f139262057921b6a
# bad: [d530697ca20e19f7a626f4c1c8b26fccd0dc4470] Merge tag
'pull-testing-updates-100523-1' of https://gitlab.com/stsquad/qemu into staging
git bisect bad d530697ca20e19f7a626f4c1c8b26fccd0dc4470
# good: [69aa0d371f67b1c042ed4f3ff4a481d561b54d21] nbd: Mark
nbd_co_do_establish_connection() and callers GRAPH_RDLOCK
git bisect good 69aa0d371f67b1c042ed4f3ff4a481d561b54d21
# good: [3217b84f3cd813a7daffc64b26543c313f3a042a] tests/docker: bump the
xtensa base to debian:11-slim
git bisect good 3217b84f3cd813a7daffc64b26543c313f3a042a
# good: [e19b157f3c66c44e3b89cb50a2030f0187b968e9] block: Mark
bdrv_refresh_limits() and callers GRAPH_RDLOCK
git bisect good e19b157f3c66c44e3b89cb50a2030f0187b968e9
# good: [2cf72cb5eb690b55974b4ace5ee42c22ace3fa8e] gitlab: enable minimal
device profile for aarch64 --disable-tcg
git bisect good 2cf72cb5eb690b55974b4ace5ee42c22ace3fa8e
# bad: [caa9cbd566877b34e9abcc04d936116fc5e0ab28] Merge tag 'for-upstream' of
https://repo.or.cz/qemu/kevin into staging
git bisect bad caa9cbd566877b34e9abcc04d936116fc5e0ab28
# bad: [58a2e3f5c37be02dac3086b81bdda9414b931edf] block: compile out
assert_bdrv_graph_readable() by default
git bisect bad 58a2e3f5c37be02dac3086b81bdda9414b931edf
# first bad commit: [58a2e3f5c37be02dac3086b81bdda9414b931edf] block: compile
out assert_bdrv_graph_readable() by default
In the report you can see that commits 271..2cf scored between -0.6 - 2.1 and
commits 58a..d53 scored 4.1 - 6.4.
Anyway from the regular pipelines I can say that:
NVMe (RHEL9):
* TunedLibvirt/fio-nvme-Aj-4i/0000:./read-4KiB/throughput/iops_sec.mean
improved about 5%
* TunedLibvirt/fio-nvme-1j-1i/0000:./read-4KiB/throughput/iops_sec.mean
improved about 3-4% and is slightly more jittery than before
Rotational disk (RHEL8):
* TunedLibvirt/fio-rot-Aj-8i/0000:./read-1024KiB/throughput/iops_sec.mean
improved about 5%
* TunedLibvirt/fio-rot-Aj-8i/0000:./write-1024KiB/throughput/iops_sec.mean
improved about 5%
other cases are within the usual jittery and I haven't noticed regressions in
any cases.
Regards,
Lukáš
> Stefan
>
>>
>> Based on the commit message I guess it's expected so take this just as a
>> record of improvement.
>>
>> Regards,
>> Lukáš
>>
>> PS: The list of perf-ci issues is available here:
>> https://docs.google.com/spreadsheets/d/1HEXI5wDsNgAIgXl5MIhGond898Vz5A1Hrkl0lZmWEbg/edit#gid=0
>
OpenPGP_0x26B362E47FCF22C1.asc
Description: OpenPGP public key
OpenPGP_signature
Description: OpenPGP digital signature