Hi Dmitriy,
Linaro Benchmarking CI has flagged several interesting code-speed and code-size regressions for your patch -- see [1].
In particular, could you check if below regressions can be avoided:
- grew in size by 21% - 473.astar:[.] _ZN7way2obj12releasepointEii
- slowed down by 61% - 505.mcf_r:[.] price_out_impl
Both of these are for 32-bit ARM, but AArch64 also has code-speed and code-size regressions.
Let me know if you need any assistance in reproducing these problems.
[1] https://linaro.atlassian.net/browse/LLVM-1001
Kind regards,
--
Maxim Kuvyrkov
https://www.linaro.org
> Begin forwarded message:
>
> From: ci_notify(a)linaro.org
> Subject: [Linaro-TCWG-CI] llvmorg-18-init-7933-ge13bed4c5f35: slowed down by 6% - 464.h264ref on aarch64 O2
> Date: October 8, 2023 at 04:26:39 GMT+4
> To: maxim.kuvyrkov(a)linaro.org
> Reply-To: linaro-toolchain(a)lists.linaro.org
>
> Dear contributor, our automatic CI has detected problems related to your patch(es). Please find some details below. If you have any questions, please follow up on linaro-toolchain(a)lists.linaro.org mailing list, Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the usual project channel.
>
> In CI config tcwg_bmk-code_speed-spec2k6/llvm-aarch64-master-O2 after:
>
> | commit llvmorg-18-init-7933-ge13bed4c5f35
> | Author: Dmitriy Smirnov <dmitriy.smirnov(a)arm.com>
> | Date: Fri Oct 6 11:15:00 2023 +0100
> |
> | [PATCH] [llvm] [InstCombine] Canonicalise ADD+GEP
> |
> | This patch tries to canonicalise add + gep to gep + gep.
> |
> | Co-authored-by: Paul Walker <paul.walker(a)arm.com>
> |
> | Reviewed By: nikic
> | ... 2 lines of the commit log omitted.
>
> the following benchmarks slowed down by more than 3%:
> - slowed down by 6% - 464.h264ref - from 11126 to 11766 perf samples
> the following hot functions slowed down by more than 15% (but their benchmarks slowed down by less than 3%):
> - slowed down by 44% - 464.h264ref:[.] FastFullPelBlockMotionSearch - from 1531 to 2206 perf samples
>
> The configuration of this build is:
> Below reproducer instructions can be used to re-build both "first_bad" and "last_good" cross-toolchains used in this bisection. Naturally, the scripts will fail when triggerring benchmarking jobs if you don\'t have access to Linaro TCWG CI.
>
> Configuration:
> - Benchmark:
> - Toolchain: Clang + Glibc + LLVM Linker
> - Version: all components were built from their tip of trunk
> - Target: aarch64-linux-gnu
> - Compiler flags: O2
> - Hardware: NVidia TX1 4x Cortex-A57
>
> This benchmarking CI is work-in-progress, and we welcome feedback and suggestions at linaro-toolchain(a)lists.linaro.org . In our improvement plans is to add support for SPEC CPU2017 benchmarks and provide "perf report/annotate" data behind these reports.
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build : https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-aarch64-master-…
> Reference build : https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-aarch64-master-…
>
> Reproduce last good and first bad builds: https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/s…
>
> Full commit : https://github.com/llvm/llvm-project/commit/e13bed4c5f3544c076ce57e36d9a11e…
>
> Latest bug report status : https://linaro.atlassian.net/browse/LLVM-1001
>
> List of configurations that regressed due to this commit :
> * tcwg_bmk-code_speed-spec2k6
> ** llvm-aarch64-master-O2
> *** slowed down by 6% - 464.h264ref
> *** https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/llvm/s…
> *** https://ci.linaro.org/job/tcwg_bmk-code_speed-spec2k6--llvm-aarch64-master-…
Hello,
Attended two events in a row in September, so had a bit of a time crunch
and the weekly report fell through the cracks...
# TCWG CI
- Investigated and fixed a few false positives in the GDB precommit CI
which were caused by random failures in
gdb.threads/process-dies-while-detaching.exp. Posted upstream and
later committed patch fixing the testcase to be more stable.
- After conversations during GNU Tools Cauldron and following Maxim's
suggestion, changed Linaro's CI to use the read1 library while running
the GDB testsuite to improve the stability of its results.
- After review from Tom Tromey, posted v2 and later committed a patch
which adds '--with-additional-debug-dirs' configure option.
- Committed a couple of changes to our CI scripts which make sure that
the kernel.yama.ptrace_scope and kernel.core_pattern sysctls have
correct values for running the GDB testsuite.
# [GNU-767] Support changing SVE vector length in remote debugging
- Now that Luis pushed his SME and SME2 patches, merged current GDB main
branch into my local branch. It builds but doesn't work yet.
# GDB Upstream
- Reviewed patch series "[PATCH v3 0/4] Dynamic properties of pointers".
- Investigated upstream bugzilla "18898 - Cannot specify non-default
list of directories as argument of --with-auto-load-dir on Windows",
but concluded it's an autoconf limitation that isn't easy to fix.
# Misc
- Prepared for Linaro's Employees Meeting.
- Attended GNU Tools Cauldron.
- Took a few days of vacation.
--
Thiago
Hi Arjun,
Please ignore this report. We had a new machine added to the testing pool, and it behaved differently than the others.
--
Maxim Kuvyrkov
https://www.linaro.org
> On Oct 4, 2023, at 22:30, ci_notify(a)linaro.org wrote:
>
> Dear contributor, our automatic CI has detected problems related to your patch(es). Please find some details below. If you have any questions, please follow up on linaro-toolchain(a)lists.linaro.org mailing list, Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the usual project channel.
>
> In CI config tcwg_glibc_check/master-arm after:
>
> | 13 patches in glibc
> | Patchwork URL: https://patchwork.sourceware.org/patch/76970
> | 72a0ec189c Move 'rpc' routines from 'inet' into 'nss'
> | e9e10ad39b Move 'protocols' routines from 'inet' into 'nss'
> | e0694af485 Move 'networks' routines from 'inet' into 'nss'
> | 547bcf6d44 Move 'netgroup' routines from 'inet' into 'nss'
> | 6c43eb641a Move 'hosts' routines from 'inet' into 'nss'
> | ... and 8 more patches in glibc
> | ... applied on top of baseline commit:
> | 1056e5b4c3 tunables: Terminate if end of input is reached (CVE-2023-4911)
>
> FAIL: 7 regressions
>
> regressions.sum:
> === glibc tests ===
>
> Running glibc:io ...
> FAIL: io/tst-close_range
>
> Running glibc:misc ...
> FAIL: misc/tst-epoll
> FAIL: misc/tst-epoll-time64
> FAIL: misc/tst-mount
> FAIL: misc/tst-process_mrelease
> ... and 6 more entries
>
> You can find the failure logs in *.log.1.xz files in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/802/artifa… .
> The full lists of regressions and progressions are in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/802/artifa… .
> The list of [ignored] baseline and flaky failures are in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/802/artifa… .
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build : https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/802/artifa…
> Reference build : https://ci.linaro.org/job/tcwg_glibc_check--master-arm-build/650/artifact/a…
Hi Joe,
Please ignore this report. We had a new machine added to the testing pool, and it behaved differently than the others.
--
Maxim Kuvyrkov
https://www.linaro.org
> On Oct 4, 2023, at 22:32, ci_notify(a)linaro.org wrote:
>
> Dear contributor, our automatic CI has detected problems related to your patch(es). Please find some details below. If you have any questions, please follow up on linaro-toolchain(a)lists.linaro.org mailing list, Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the usual project channel.
>
> In CI config tcwg_glibc_check/master-arm after:
>
> | glibc patch https://patchwork.sourceware.org/patch/77093
> | Author: Joe Ramsay <Joe.Ramsay(a)arm.com>
> | Date: Wed Oct 4 11:58:09 2023 +0100
> |
> | aarch64: Improve vecmath sin routines
> |
> | * Update ULP comment reflecting a new observed max in [-pi/2, pi/2]
> | * Use the same polynomial in AdvSIMD and SVE, rather than FTRIG instructions
> | * Improve register use near special-case branch
> |
> | Also use overloaded intrinsics for SVE.
> | ... applied on top of baseline commit:
> | 1056e5b4c3 tunables: Terminate if end of input is reached (CVE-2023-4911)
>
> FAIL: 5 regressions
>
> regressions.sum:
> === glibc tests ===
>
> Running glibc:io ...
> FAIL: io/tst-close_range
>
> Running glibc:misc ...
> FAIL: misc/tst-epoll
> FAIL: misc/tst-epoll-time64
> FAIL: misc/tst-mount
> FAIL: misc/tst-process_mrelease
> ... and 2 more entries
>
> You can find the failure logs in *.log.1.xz files in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/810/artifa… .
> The full lists of regressions and progressions are in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/810/artifa… .
> The list of [ignored] baseline and flaky failures are in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/810/artifa… .
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build : https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/810/artifa…
> Reference build : https://ci.linaro.org/job/tcwg_glibc_check--master-arm-build/650/artifact/a…
Hi Siddhesh,
Please ignore this report. We had a new machine added to the testing pool, and it behaved differently than the others.
--
Maxim Kuvyrkov
https://www.linaro.org
> On Oct 4, 2023, at 22:33, ci_notify(a)linaro.org wrote:
>
> Dear contributor, our automatic CI has detected problems related to your patch(es). Please find some details below. If you have any questions, please follow up on linaro-toolchain(a)lists.linaro.org mailing list, Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the usual project channel.
>
> In CI config tcwg_glibc_check/master-arm after:
>
> | glibc patch https://patchwork.sourceware.org/patch/77054
> | Author: Siddhesh Poyarekar <siddhesh(a)sourceware.org>
> | Date: Tue Oct 3 16:11:50 2023 -0400
> |
> | Make all malloc tunables SXID_ERASE
> |
> | The malloc tunables were made SXID_IGNORE to mimic the environment
> | variables they aliased, in order to maintain compatibility. This
> | allowed alteration of allocator behaviour across setuid boundaries,
> | where a setuid program may ignore the tunable but its non-setuid child
> | can read it and adjust allocator behaviour accordingly.
> | ... 10 lines of the commit log omitted.
> | ... applied on top of baseline commit:
> | 1056e5b4c3 tunables: Terminate if end of input is reached (CVE-2023-4911)
>
> FAIL: 5 regressions
>
> regressions.sum:
> === glibc tests ===
>
> Running glibc:io ...
> FAIL: io/tst-close_range
>
> Running glibc:misc ...
> FAIL: misc/tst-epoll
> FAIL: misc/tst-epoll-time64
> FAIL: misc/tst-mount
> FAIL: misc/tst-process_mrelease
> ... and 2 more entries
>
> You can find the failure logs in *.log.1.xz files in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/806/artifa… .
> The full lists of regressions and progressions are in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/806/artifa… .
> The list of [ignored] baseline and flaky failures are in
> - https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/806/artifa… .
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build : https://ci.linaro.org/job/tcwg_glibc_check--master-arm-precommit/806/artifa…
> Reference build : https://ci.linaro.org/job/tcwg_glibc_check--master-arm-build/650/artifact/a…
Hi,
The error reported below was in fact caused by a bug in these tests, which
has now been fixed.
Sorry for the false alarm.
Thanks
On Tue, 26 Sept 2023 at 16:42, <ci_notify(a)linaro.org> wrote:
> Dear contributor, our automatic CI has detected problems related to your
> patch(es). Please find some details below. If you have any questions,
> please follow up on linaro-toolchain(a)lists.linaro.org mailing list,
> Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain
> developer on the usual project channel.
>
> In CI config tcwg_binutils_check/master-aarch64 after:
>
> | binutils patch https://patchwork.sourceware.org/patch/76666
> | Author: Arsen Arsenović <arsen(a)aarsen.me>
> | Date: Tue Sep 26 02:17:33 2023 +0200
> |
> | *: add modern gettext support
> |
> | ChangeLog:
> |
> | * .gitignore: Add '/gettext*'.
> | * configure.ac (host_libs): Replace intl with gettext.
> | (hbaseargs, bbaseargs, baseargs): Split baseargs into
> {h,b}baseargs.
> | ... 64 lines of the commit log omitted.
> | ... applied on top of baseline commit:
> | d86dbbea8a8 aarch64: Allow feature flags to occupy >64 bits
>
> FAIL: 2 regressions
>
> regressions.sum:
> === binutils tests ===
>
> Running binutils:binutils-all/ar.exp ...
> FAIL: replacing non-deterministic member (wrong size, expected: 920)
> FAIL: replacing SOURCE_DATE_EPOCH deterministic member (wrong size,
> expected: 1096)
>
> === Results Summary ===
>
> You can find the failure logs in *.log.1.xz files in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/376…
> .
> The full lists of regressions and progressions are in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/376…
> .
> The list of [ignored] baseline and flaky failures are in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/376…
> .
>
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build :
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/376…
> Reference build :
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-build/302/art…
Hi,
The error reported below was in fact caused by a bug in these tests, which
has now been fixed.
Sorry for the false alarm.
Thanks
On Tue, 26 Sept 2023 at 16:38, <ci_notify(a)linaro.org> wrote:
> Dear contributor, our automatic CI has detected problems related to your
> patch(es). Please find some details below. If you have any questions,
> please follow up on linaro-toolchain(a)lists.linaro.org mailing list,
> Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain
> developer on the usual project channel.
>
> In CI config tcwg_binutils_check/master-aarch64 after:
>
> | binutils patch https://patchwork.sourceware.org/patch/76704
> | Author: Neal Frager <neal.frager(a)amd.com>
> | Date: Tue Sep 26 13:46:37 2023 +0100
> |
> | gas: microblaze: fixing constant range check issue
> |
> | The range check should be checking for the range
> | ffffffff80000000..7fffffff, not ffffffff70000000.
> |
> | This patch has been tested for years of AMD Xilinx Yocto
> | releases as part of the following patch set:
> | ... 5 lines of the commit log omitted.
> | ... applied on top of baseline commit:
> | d86dbbea8a8 aarch64: Allow feature flags to occupy >64 bits
>
> FAIL: 2 regressions
>
> regressions.sum:
> === binutils tests ===
>
> Running binutils:binutils-all/ar.exp ...
> FAIL: replacing non-deterministic member (wrong size, expected: 920)
> FAIL: replacing SOURCE_DATE_EPOCH deterministic member (wrong size,
> expected: 1096)
>
> === Results Summary ===
>
> You can find the failure logs in *.log.1.xz files in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/379…
> .
> The full lists of regressions and progressions are in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/379…
> .
> The list of [ignored] baseline and flaky failures are in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/379…
> .
>
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build :
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/379…
> Reference build :
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-build/302/art…
Hi,
The error reported below was in fact caused by a bug in these tests, which
has now been fixed.
Sorry for the false alarm.
Thanks
On Tue, 26 Sept 2023 at 16:38, <ci_notify(a)linaro.org> wrote:
> Dear contributor, our automatic CI has detected problems related to your
> patch(es). Please find some details below. If you have any questions,
> please follow up on linaro-toolchain(a)lists.linaro.org mailing list,
> Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain
> developer on the usual project channel.
>
> In CI config tcwg_binutils_check/master-aarch64 after:
>
> | binutils patch https://patchwork.sourceware.org/patch/76687
> | Author: YunQiang Su <yunqiang.su(a)cipunited.com>
> | Date: Tue Sep 26 07:20:35 2023 -0400
> |
> | GAS/MIPS: Fix testcase module-defer-warn2 for r2+ triples
> |
> | When gas is configured with --target=mipsisa32r2el-elf,
> module-defer-warn2
> | will fail:
> |
> | /binutils-gdb/gas/testsuite/gas/mips/module-defer-warn2.s:
> Assembler messages:
> | /binutils-gdb/gas/testsuite/gas/mips/module-defer-warn2.s:2:
> Error: `gp=64' used with a 32-bit processor
> | ... 11 lines of the commit log omitted.
> | ... applied on top of baseline commit:
> | d86dbbea8a8 aarch64: Allow feature flags to occupy >64 bits
>
> FAIL: 2 regressions
>
> regressions.sum:
> === binutils tests ===
>
> Running binutils:binutils-all/ar.exp ...
> FAIL: replacing non-deterministic member (wrong size, expected: 920)
> FAIL: replacing SOURCE_DATE_EPOCH deterministic member (wrong size,
> expected: 1096)
>
> === Results Summary ===
>
> You can find the failure logs in *.log.1.xz files in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/378…
> .
> The full lists of regressions and progressions are in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/378…
> .
> The list of [ignored] baseline and flaky failures are in
> -
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/378…
> .
>
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build :
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-precommit/378…
> Reference build :
> https://ci.linaro.org/job/tcwg_binutils_check--master-aarch64-build/302/art…
The <bits/version.h> header needs to be regenerated. The changes to
the generated file were not in the diff posted to the mailing list
(but are committed to git).
On Mon, 25 Sept 2023 at 11:55, <ci_notify(a)linaro.org> wrote:
>
> Dear contributor, our automatic CI has detected problems related to your patch(es). Please find some details below. If you have any questions, please follow up on linaro-toolchain(a)lists.linaro.org mailing list, Libera's #linaro-tcwg channel, or ping your favourite Linaro toolchain developer on the usual project channel.
>
> In CI config tcwg_gcc_check/master-arm after:
>
> | gcc patch https://patchwork.sourceware.org/patch/76638
> | Author: Jonathan Wakely <jwakely(a)redhat.com>
> | Date: Mon Sep 25 09:53:24 2023 +0100
> |
> | libstdc++: Define C++23 std::forward_like (P2445R1)
> |
> | Tested x86_64-linux. Pushed to trunk.
> |
> | -- >8 --
> |
> | libstdc++-v3/ChangeLog:
> | ... 8 lines of the commit log omitted.
> | ... applied on top of baseline commit:
> | c25d6f15211 LoongArch: doc: Update -m[no-]explicit-relocs for r14-4160
>
> FAIL: 12 regressions
>
> regressions.sum:
> === libstdc++ tests ===
>
> Running libstdc++:libstdc++-dg/conformance.exp ...
> FAIL: 20_util/forward_like/1.cc -std=gnu++23 (test for excess errors)
> FAIL: 20_util/forward_like/1.cc -std=gnu++26 (test for excess errors)
> FAIL: 20_util/forward_like/2_neg.cc -std=gnu++23 (test for errors, line )
> FAIL: 20_util/forward_like/2_neg.cc -std=gnu++23 (test for errors, line 5)
> FAIL: 20_util/forward_like/2_neg.cc -std=gnu++23 (test for errors, line 7)
> FAIL: 20_util/forward_like/2_neg.cc -std=gnu++23 (test for excess errors)
> FAIL: 20_util/forward_like/2_neg.cc -std=gnu++26 (test for errors, line )
> ... and 7 more entries
>
> You can find the failure logs in *.log.1.xz files in
> - https://ci.linaro.org/job/tcwg_gcc_check--master-arm-precommit/3840/artifac… .
> The full lists of regressions and progressions are in
> - https://ci.linaro.org/job/tcwg_gcc_check--master-arm-precommit/3840/artifac… .
> The list of [ignored] baseline and flaky failures are in
> - https://ci.linaro.org/job/tcwg_gcc_check--master-arm-precommit/3840/artifac… .
>
>
>
> -----------------8<--------------------------8<--------------------------8<--------------------------
> The information below can be used to reproduce a debug environment:
>
> Current build : https://ci.linaro.org/job/tcwg_gcc_check--master-arm-precommit/3840/artifac…
> Reference build : https://ci.linaro.org/job/tcwg_gcc_check--master-arm-build/1059/artifact/ar…